判断表达式

2020-01-27  本文已影响0人  上瘾_

test 用于测试某一个文件或者是目录
-e 该文件名是不是存在
-f 该文件名是不是存在而且是否为文件
-d 该文件名是不是存在而且是否为目录
-s 该文件名是不是存在且为非空白文件 如果不是空白文件 就返回为0

-eq 俩个数值相等
-ne 俩个数值不相等
-gt 大于
-lt 小于
-ge 大于或等于
-le 小于或等于

-z 判断字符串是否为零 如果是空字符串就返回为真
!-z 判断字符串是否为非零 如果是空字符串就返回为假
== 判断字符串是否相等 注意 俩个字符串要加引号
!= 判断俩个字符串是不是不相等 如果是相等就返回为假

-a 并且的意思 俩个条件必须同时存在
-o 或者的意思 俩个条件有一个为真就可以

判断符号 []

[ -z "{HOME}" ] ; echo?
必须要注意中括号的两端需要有空白字符来分隔喔! 假设我空白键使用“□”符号来表示,那么,在这些地方你都需要有空白键:
注:
在中括号 [] 内的每个元件都需要有空白键来分隔;
在中括号内的变量,最好都以双引号括号起来;

错误示范
name="shark ops"
[ ${name} == "xiguatian" ]

会报错

bash: [: too many arguments

之前的是会这样的
[ {name} == "xiguatian" ] 会变成 [ shark ops == "xiguatian" ] 所以应该写成下面这样 [ "{name}" == "xiguatian" ] 会变成 [ "shark ops" == "xiguatian" ]

上一篇 下一篇

猜你喜欢

热点阅读