如果运行:
true \ false; echo $?
我得到的退出代码为 0。有人知道这是为什么吗?
答案1
true \ false
相当于
true ' false'
它使 shelltrue
以false
(包括初始空格字符)作为其参数运行。您正在使用的实现true
会忽略此参数并以零返回值退出。
答案2
您只是运行带有一些参数的命令true
。由于这些论点不是选项,因此它们是什么并不重要。
如果运行:
true \ false; echo $?
我得到的退出代码为 0。有人知道这是为什么吗?
true \ false
相当于
true ' false'
它使 shelltrue
以false
(包括初始空格字符)作为其参数运行。您正在使用的实现true
会忽略此参数并以零返回值退出。
您只是运行带有一些参数的命令true
。由于这些论点不是选项,因此它们是什么并不重要。