温馨提示×

Shell if 如何实现条件判断

小樊
84
2024-10-14 15:05:00
栏目: 编程语言

在Shell脚本中,可以使用if语句进行条件判断。if语句的基本语法如下:

if [ condition ]; then
    # 当条件成立时执行的命令
elif [ condition ]; then
    # 当条件成立时执行的命令(可选,可以有多个elif)
else
    # 当所有条件都不成立时执行的命令
fi

其中,condition 是一个测试表达式,用于判断条件是否成立。常用的测试操作符包括:

  • -eq:等于
  • -ne:不等于
  • -gt:大于
  • -lt:小于
  • -ge:大于等于
  • -le:小于等于
  • -z:字符串长度为零
  • -n:字符串长度不为零
  • -e:文件存在
  • -f:文件为普通文件
  • -d:目录存在
  • -s:文件大小为0
  • -b:文件为块设备
  • -c:文件为字符设备
  • -p:文件存在且是一个管道
  • -u:文件具有用户读权限
  • -g:文件具有组读权限
  • -o:文件具有其他用户读权限
  • -w:文件具有写权限
  • -x:文件具有执行权限

示例:

#!/bin/bash

num=10

if [ $num -eq 10 ]; then
    echo "The number is 10."
elif [ $num -lt 10 ]; then
    echo "The number is less than 10."
else
    echo "The number is greater than 10."
fi

在这个示例中,我们判断变量num的值,如果等于10,输出"The number is 10.“;如果小于10,输出"The number is less than 10.”;否则输出"The number is greater than 10."。

0