1

前のコマンドが正常に実行されたかどうかを簡単に確認できるように、Bash シェル プロンプトに終了コードを表示したいのですが、常に 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 に答える