标签: shell
我在Google上搜索了这个网站的答案,解释了如何测试shell中是否设置了变量(我使用bash,但我更喜欢解决方案是可移植的)最严格的意义,但我没有找到任何结果。
问题是常见答案实际上并未检查以确定是否设置了变量。相反,他们会检查它是否为空。如果我键入var="",则var将设置为空字符串。尽管如此,它仍然设置。尽管存在变量,但正在运行[ -z "${var}" ]将返回true。
var=""
var
[ -z "${var}" ]
true
如何测试是否在各种shell中设置了变量,而不仅仅是空?