我想知道 ksh 中这种 if 的语法是什么:
if [[ $tmpEngine != "a" || $tmpEngine != "b" || $tmpEngine != "s" ]]; then
...
fi
实际上,我的代码不起作用,这里有什么问题?问题不在于我的if的含义,而在于如何从语法的角度正确编写它。
答案1
无论$tmpEngine
值是什么,这个测试总是正确的,我的意思是,$tmpEngine
不可能a
,b
并且s
同时至少有两个比较总是正确的。
您可能想要:
if [[ "$tmpEngine" != "a" && "$tmpEngine" != "b" && "$tmpEngine" != "s" ]]; then
...
fi