在方括号内包含变量是什么意思?布尔值?
例如:
[ $FILES ] || { print "File not found." }
[ $VERIFY ] && { print "file verification fail" }
答案 0 :(得分:0)
[]
调用test
命令,该命令使您可以根据内部提供的参数来运行条件测试。
对于您提供的示例:
$FILES
是单个参数,因此如果参数不为null,则测试将返回True。通过||
(逻辑或)进行管道传输,每当$ FILES为'null'时,test
将返回非零的退出状态(1),从而显示“找不到文件”。$VERIFY
的同上,除了用&&
进行管道传输,这意味着只要$ VERIFY不为null,print "file verification"
就会执行(因为test
将在这种情况)。我还要补充说,还有一个[[]]
,它是“较新的”测试,更常用
编辑:我还建议将变量名称括在双引号(“”)中,因为它们在技术上是命令的参数。