我们可以使用类似如下的语法,来检查一个变量是否存在:
${varName? Error: The varName is not defined}
如果 varName 不为空,则此语句相当于 $varName;
如果 varName 的值是空,则此语句也返回空;
但是,如果 varName 是未定义的,此语句将返回一个错误,并显示“?”定义的错误信息。
运行效果图:
我们也可以使用下面这个语句:
${varName:? Error: The varName is not defined}
此语句与上一条语句类似,唯一的区别是:如果变量 varName 的值是空,此语句也返回一个错误。
运行效果图:
如果使用这两句检查的变量未定义,那么脚本将会停止执行。
除了上面的方法,Bash 中还可以使用 if 语句来判断变量是否存在。
本文参考自 《Linux Shell命令行及脚本编程实例详解 》