1

我希望在 Bash shell 提示符下显示退出代码,以便我可以轻松知道上一个命令是否成功运行,但是它总是显示 0。这有什么问题吗?那么有没有可能达到想要的结果呢?

 PS1="\t <\w> ERR:$(echo $?) \$ "

在此处输入图像描述

-- openSUSE 11.4 上的 Bash 4.1.10

4

1 回答 1

7

执行分配时,您忘记转义$以抑制扩展。

PS1="\t <\w> ERR:$(echo \$?) \$ "

​</p>

22:04:48 <~/Work/tmp> ERR:x $ true
22:05:51 <~/Work/tmp> ERR:0 $ false
22:05:52 <~/Work/tmp> ERR:1 $ 
于 2012-09-03T02:07:45.017 回答