【发布时间】:2016-02-17 16:22:04
【问题描述】:
在一些用于 Solaris 的古老 Shell 脚本中,我发现了以下符号来检查变量是否为空:
[ x"$var" = x ]
在当前的 Linux 系统上,我会这样写
[ "$var" = "" ]
或
[ -z "$var" ]
[ 的哪个版本实际上需要第一个符号?
【问题讨论】:
标签: sh
在一些用于 Solaris 的古老 Shell 脚本中,我发现了以下符号来检查变量是否为空:
[ x"$var" = x ]
在当前的 Linux 系统上,我会这样写
[ "$var" = "" ]
或
[ -z "$var" ]
[ 的哪个版本实际上需要第一个符号?
【问题讨论】:
标签: sh
无。从 [] 到 test 的别名出现在 test 的选项 -z 之后。因此,如果可以使用[ x"$var" = x],也可以写成[ -z "$var" ]。
【讨论】: