test 用于测试某一个文件或者是目录
-e 该文件名是不是存在
-f 该文件名是不是存在而且是否为文件
-d 该文件名是不是存在而且是否为目录
-s 该文件名是不是存在且为非空白文件 如果不是空白文件 就返回为0
-eq 俩个数值相等
-ne 俩个数值不相等
-gt 大于
-lt 小于
-ge 大于或等于
-le 小于或等于
-z 判断字符串是否为零 如果是空字符串就返回为真
!-z 判断字符串是否为非零 如果是空字符串就返回为假
== 判断字符串是否相等 注意 俩个字符串要加引号
!= 判断俩个字符串是不是不相等 如果是相等就返回为假
-a 并且的意思 俩个条件必须同时存在
-o 或者的意思 俩个条件有一个为真就可以
判断符号 []
[ -z "?
必须要注意中括号的两端需要有空白字符来分隔喔! 假设我空白键使用“□”符号来表示,那么,在这些地方你都需要有空白键:
注:
在中括号 [] 内的每个元件都需要有空白键来分隔;
在中括号内的变量,最好都以双引号括号起来;
错误示范
name="shark ops"
[ ${name} == "xiguatian" ]
会报错
bash: [: too many arguments
之前的是会这样的
[ {name}" == "xiguatian" ] 会变成 [ "shark ops" == "xiguatian" ]