shell if语句中的条件表达式有哪些

avatar
作者
筋斗云
阅读量:0

在Shell脚本中,if语句用于根据条件执行代码块

  1. 数值比较:

    • -eq:等于
    • -ne:不等于
    • -gt:大于
    • -lt:小于
    • -ge:大于等于
    • -le:小于等于

    示例:

    if [ $num1 -eq $num2 ]; then   echo "Numbers are equal." fi 
  2. 字符串比较:

    • =:相等
    • !=:不相等
    • -z:字符串长度为0
    • -n:字符串长度不为0

    示例:

    if [ "$str1" = "$str2" ]; then   echo "Strings are equal." fi 
  3. 文件测试:

    • -e:文件存在
    • -d:文件是目录
    • -f:文件是普通文件
    • -r:文件可读
    • -w:文件可写
    • -x:文件可执行

    示例:

    if [ -e "file.txt" ]; then   echo "File exists." fi 
  4. 逻辑运算:

    • &&:逻辑与(and)
    • ||:逻辑或(or)
    • !:逻辑非(not)

    示例:

    if [ $num1 -gt $num2 ] && [ $num1 -lt 100 ]; then   echo "Number is greater than the other but less than 100." fi 

注意:在条件表达式中,使用方括号[],并在操作符两侧添加空格。在比较字符串时,确保将变量放在双引号内,以避免空格或特殊字符导致的错误。

广告一刻

为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!