运算符
=, +, -, *, /, %, +=, -=, *=, /=, %=
基本与 C 中的一致。
需要注意的是 =
在 test 中表示字符串的比较。
幂运算符 **
let "z=2**5" # 2^5
let "z=$z+1"
let "z+=1"
位运算符
<<, <<=, >>, >>=, &, &=, |, |=, ~, ^, ^=
与 C 基本一致。
逻辑运算符
!
非
if [ ! -f $FILENAME ] then;
...
&&, ||
与,或
# &&
if [ $condition1 ] && [ $condition2 ]
if [ $condition1 && $condition2 ] # 错误,应该是 [ $condition1 -a $condition2 ]
# ||
if [ $condition1 ] || [ $condition2 ]
if [ $condition2 -o $condition2 ] # 建议逻辑运算不使用 -a, -o 使用 &&, || 代替之。
网友评论