📜  Shell 脚本中的基本运算符(1)

📅  最后修改于: 2023-12-03 15:34:58.184000             🧑  作者: Mango

Shell 脚本中的基本运算符

Shell 脚本中的基本运算符包括算术运算符、关系运算符、布尔运算符和字符串运算符。这些运算符都可用于进行数值或字符串操作,并且可以通过使用表达式将它们组合起来以实现更复杂的操作。

算术运算符

算术运算符用于进行数学运算,在 Shell 中,可用的算术运算符如下:

| 运算符 | 描述 | | ---- | ---- | | + | 加法 | | - | 减法 | | * | 乘法 | | / | 除法 | | % | 取模 |

这些运算符可以用于整数或浮点数操作。

# 使用算术运算符进行计算
a=10
b=5
echo $(expr $a + $b)    # 输出 15
echo $(expr $a - $b)    # 输出 5
echo $(expr $a \* $b)   # 注意:乘号(*)需要转义
echo $(expr $a / $b)    # 输出 2
echo $(expr $a % $b)    # 输出 0
关系运算符

关系运算符用于比较两个值,如果条件成立,返回 true,否则返回 false。在 Shell 中,可用的关系运算符如下:

| 运算符 | 描述 | | ---- | ---- | | -eq | 等于 | | -ne | 不等于 | | -gt | 大于 | | -lt | 小于 | | -ge | 大于等于 | | -le | 小于等于 |

# 使用关系运算符比较两个值
a=10
b=5
if [ $a -eq $b ]
then
  echo "a 等于 b"
else
  echo "a 不等于 b"
fi
布尔运算符

布尔运算符用于在条件语句中组合多个条件。在 Shell 中,可用的布尔运算符如下:

| 运算符 | 描述 | | ---- | ---- | | ! | 非 | | -o | 或 | | -a | 与 |

# 使用布尔运算符组合条件语句
a=10
b=5

if [ $a == $b -o $a -gt $b ]
then
  echo "条件成立"
else
  echo "条件不成立"
fi
字符串运算符

字符串运算符用于比较两个字符串。在 Shell 中,可用的字符串运算符如下:

| 运算符 | 描述 | | ---- | ---- | | = | 相等 | | != | 不相等 | | -z | 长度为零 | | -n | 长度不为零 | | str | 包含 |

# 使用字符串运算符比较两个字符串
str1="hello"
str2="world"

if [ $str1 = $str2 ]
then
  echo "字符串相等"
else
  echo "字符串不相等"
fi

以上是 Shell 脚本中的基本运算符,可以通过它们进行数值或字符串的操作,方便地实现复杂的计算或逻辑判断。