字符串运算符
运算符 说明
string 判断指定的字符串是否为空
string1 = string 2 判断两个字符串string1 和string2 是否相等
string1 !=string2 判断两个字符串string1 和string2是否不等
-n string 判断string是否为非空串
-z string 怕暖string是否为空串
常见证书运算符
number1 -eq number2 比较number1是否等于number2.如果相等,测试结果为0
number1 -ne number2 比较number1和number2 是否相等,如果不相等,测试结果为0
number1 -gt number2 比较number1是否大于number2 。如果number1 大于number2,测试结果为0
number1 -lt number2 测试number1 是否小于number2 。如果number1 小于number2 ,测试结果为0
number 1 -ge number2 测试number1 是否大于等于numb二。如果大于等于,测试结果为0
number1 -le number2 测试number1是否小于等于number2 ,如果小于等于,测试结果为0
常用文件操作符
-a file 文件是否存在,如果文件file存在,则结果为0;
-b file 文件是否存在,且为块。如果文件file是一个存在的块文件,则结果为0
-c file文件是否存在,且为字符文件。如果file是一个已经存在的字符文件,则结果为0
-d file文件是否存在,且为目录。如果文件file是一个已经存在的目录,则结果为0
-e file 等同 -a操作符
-s file 文件的长度是否大于0或者文件为非空文件。如果file是一个非空文件,则结果为0
-f file 文件存在,并且为常规文件。如果file是一个已经存在的常规文件。则结果为0
-w file 文件是否存在且可写。如果文件file是一个可写文件则结果为0
-L file 文件是否存在,并且为符号链接。如果文件file是一个已经存在的符号链接,则结果为0
-u file 文件是否设置suid位,如果文件file已经设置了suid位,则结果为0
-r file 文件是否存在,并且是可读。如果文件file是一个已经存在的可读文件,则结果为0
-x file 文件是否存在,并且为可执行,如果文件file是一个已经尽的可执行,则结果为0
逻辑操作符
!expression 逻辑非,条件表达式expression的值为假,则该操作符的运算结果为真
expression1 -a expression2 逻辑与,条件表达式expression1和expression2的值都是真时,整个表达式的值才是真
expression1 -o expression2 逻辑或,条件表达式expression1或者expression2的值有一个为真时,整个表达式的值就为真
[root@shell1-com ~]# a=35
[root@shell1-com ~]# test "$a" -gt 20 -a "$a" -lt 60
[root@shell1-com ~]# echo $?
0
[root@shell1-com ~]# [ -e new.sh -a -w new.sh ]
[root@shell1-com ~]# echo $?
0
符合算术运算符
+= 将左边的数加到右边的数,然后再将和赋值给左边的变量
-=将左边的数减去右边的数,然后再将和赋值给左边的变量
*=将左边的数乘以右边的数,然后再将和赋值给左边的变量
/=将左边的数除以右边的数,然后再将和赋值给左边的变量
%=将左边的数对右边的数求模之后,然后再将和赋值给左边的变量
常用位运算
<<左移 4<<2,将4左移2位,结果为16
>>右移8>>2,将8右移2位,结果为2
&按位与8&&4,将8和4进行按位与运算,结果为0
|按位或8|4,将8和4进行按位或运算,结果为12
~按位非~8,将8进行按位非运算,结果为-9
^按位异或10^6 将10和6进行按二进制位异或运算,结果为12
网友评论