我想做一些像这些语句中的任何一个,可能就像bash一样,但收到了错误:
if ! prog ...
....
错误: fish: Unknown command '! prog ...'
if test ! prog ...
....
错误: test: Expected a combining operator like '-a' at index 2
答案 0 :(得分:7)
您正在寻找not
关键字:
if not false
echo Foo
end
答案 1 :(得分:0)
仅使用$status
结束。
if test "$status" != "0"
...
我不想将语句与我检查其错误代码的位置分开,以防将来意外的代码维护插入其他语句,即使与echo
几乎无害,但我找不到另一种在测试线上使用程序调用来获得我想要的否定条件的方法。
我想我可以将其中一些状态包括在内。并且将逻辑否定为一个函数,但这似乎更多的工作,并且我希望我错过了一个更简洁的语法作为条件语句。