linux shell if [[ ! -z $1 ]];是什么意思?
发布网友
发布时间:2022-04-25 21:37
我来回答
共3个回答
热心网友
时间:2022-06-17 17:58
判断第一个参数不为空
!非
-z 在if里的意思是 空
$1 第一个参数
[ ! -z $1 ],这是需要返回一个值0或者1
最后结果是 if[1]或者if[0]
热心网友
时间:2022-06-17 17:58
你可以输入 type [ [[ 来看下他们的说明
$ type [ [[ test
[ is a shell builtin
[[ is a shell keyword
test is a shell builtin
绝大多数情况下,这个三个功能通用。但是命令和关键字总是有区别的。命令和 关键字的差
别有多大呢?
如果是命令,它就和参数组合为一体被 shell 解释,那样比如 ">" "<" 就被 shell 解释为
重定向符号了。关键字却不这样。
在 [[ 中使用 && 和 ||
[ 中使用 -a 和 -o 表示逻辑与和逻辑或。
[[ 中可以使用通配符
arch=i486
[[ $arch = i*86 ]] && echo "arch is x86!"
[[ 中匹配字符串或通配符,不需要引号
热心网友
时间:2022-06-17 17:58
判断 $1 这个变量是不是空字符串
如果不是返回真追问[ ! -z $1 ]那干嘛还要多加一个中括号呢?
追答括号是个表达式,相当于,test ! -z $!