为什么反斜杠不会产生非零退出代码

为什么反斜杠不会产生非零退出代码

如果运行:

 true \ false; echo $?

我得到的退出代码为 0。有人知道这是为什么吗?

答案1

true \ false

相当于

true ' false'

它使 shelltruefalse(包括初始空格字符)作为其参数运行。您正在使用的实现true会忽略此参数并以零返回值退出。

答案2

您只是运行带有一些参数的命令true。由于这些论点不是选项,因此它们是什么并不重要。

相关内容