我打破了我的脑袋。我不明白为什么下面的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 Lion 10.7.4
答案 0 :(得分:2)
它甚至有意义吗? $renameOption
始终不等于这两者中的任何一个。您可能想要&&
。