我想将选项传递给我的 bash 脚本。如果设置了“GUI”选项,则应使用 zenity 进行输入和输出,而不是控制台。目前我将选项作为环境变量传递,如下所示:
GUI=1 ./my_bash_script.sh
然后我发现我可以像这样测试变量的长度:
if [ -n "$GUI" ]; then
但是随后,我很随机地发现,只测试没有选项的字符串似乎也可以按预期工作:
if [ "$GUI" ]; then
我已经阅读了手册条目,test
但我看不到任何解释如果你只传递一个没有任何参数的字符串会发生什么。我猜如果它收到一个空字符串它返回true,否则它返回false?是这样吗?