0
我想检查是否设置了多个命令行参数。例如。Bash非空/非零检查多个字符串变量
if [-n "$1"] && [-n "$2"] && [-n "$3"]; then
do something
else
do something else
fi
但我不断收到
庆典:[-n:命令未找到
什么是做到这一点的正确方法是什么?
我想检查是否设置了多个命令行参数。例如。Bash非空/非零检查多个字符串变量
if [-n "$1"] && [-n "$2"] && [-n "$3"]; then
do something
else
do something else
fi
但我不断收到
庆典:[-n:命令未找到
什么是做到这一点的正确方法是什么?
您需要在大括号之间的空间,即
if [ -n "$1" ] && [ -n "$2" ] && [ -n "$3" ]; then
您还可以使用extended test command ([[...]]
)作为
if [[ -n "$1" && -n "$2" && -n "$3" ]]; then
哇,我也不会看上一个感谢!将接受,当它让我 – PDStat
@PaulStatham:你总是可以使用http://www.shellcheck.net/调试将来的语法问题。 – Inian