(非ゼロの場合)私は現在、最後のコマンド実行の戻りコードを出力する関数を呼び出すbashでプロンプトを持っている:$?
のために別のコマンドがない限りリセットしない以外これは、うまくむしろ作品
exit_code_prompt()
{
local exit_code=$?
if [ $exit_code -ne 0 ]
then
tput setaf 1
printf "%s" $exit_code
tput sgr0
fi
}
PS1='$(exit_code_prompt)\$ '
実行されます。
$ echo "works"
works
$ command_not_found
bash: command_not_found: command not found
127$
127$
127$
127$ echo "works"
works
$
それは親のために$?
の値が初めてexit_code_prompt()
が、それは、プロンプトに値を繰り返すように続けないように実行されるシェル/リセットすることが可能に設定されていませんか?
多くのおかげで、スティーブ。
なぜこれをやりたいですか? コマンドラインで手動でスクリプトスニペットをテストしたい場合は、これがさらに問題になることがあります。 – anishsane