我用这个打破了我的头。我不明白为什么下面的 IF 语句不起作用
renameOption="-rs"
if [[ $# -eq 4 ]]; then
if [[ $renameOption != "-rs" ]] || [[ $renameOption != "-rb" ]]; then
echo -e "tArgument three needs to be '-rs' or '-rb'"
echo -e "tNow exiting script"
exit
fi
flag=1
echo "Good to go"
fi
我知道语法是正确的,但我注意到的是系统无法识别第二个 IF 中的 OR ||
表达式。使用单个表达式时,它可以正常工作,但是我需要与两个表达式进行比较,因此OR ||
。
我正在运行 OSX 狮子 10.7.4
这甚至有意义吗? $renameOption
总是不等于这两者中的任何一个。你可能想要&&
.