【发布时间】:2016-10-30 06:16:54
【问题描述】:
我试图在 if 条件下在 bash 脚本中组合逻辑 AND & OR。不知何故,我没有得到想要的输出,而且很难排除故障。 我正在尝试验证传递给 shell 脚本的输入参数是否无参数,并且传递的第一个参数是否有效。
if [ "$#" -ne 1 ] && ([ "$1" == "ABC" ] || [ "$1" == "DEF" ] || [ "$1" == "GHI" ] || [ "$1" == "JKL" ])
then
echo "Usage: ./myscript.sh [ABC | DEF | GHI | JKL]"
exit 1
fi
谁能指出这里出了什么问题?
【问题讨论】:
标签: bash unix if-statement