我正在尝试更新其他人编写的 bash 脚本,但遇到了一行我不确定的内容。
谁能告诉我以下检查的作用:
if [ :$RESULT != :0,0 ]
我假设它正在检查 $RESULT 中的某些值,可能带有子字符串?
任何帮助表示赞赏!
命令[
只是命令的别名test
,右方括号只是语法糖(命令[
如果最后一个参数是右括号,则忽略它),因此该行实际上是
if test :$RESULT != :0,0
它比较字符串是否:$RESULT
等于字符串:0,0
。冒号是在变量的情况下预先设置的$RESULT
是空的。如果省略冒号,该行将如下所示$RESULT
是一个空字符串:
if test != 0,0
这会导致错误,因为test
期望之前有一个参数!=
。另一种方法是使用引号来指示有一个参数,该参数是一个空字符串:
if test "$RESULT" != 0,0
# Will become
if test "" != 0,0
不过,您发布的变体更便携。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)