西山和広です。

In <20031015.231902.112630306.JCA02266 / nifty.ne.jp>
On Wed, 15 Oct 2003 23:19:28 +0900
Koji Arai <JCA02266 / nifty.ne.jp> wrote:
> $? の値を使ってプロセスがシグナルで終了した場合はそれをお知らせしてくれます。
> 
> で、128 以上の終了ステータスに対して
> 
> $ (exit 143)
> [Exit 143 (SIGTERM)]
> 
> とかなるのが嫌だったんですよね。それ以前は気にしてなかったし。
> exit status を 128 未満(とか126未満とか)にしなさいといった記
> 述も見たことないのは確かですね。
> 
> まあ、実際にそんなのにお目にかかる事は(255以外)なかったですが。

zshのPRINT_EXIT_VALUEだと区別できるようです。
PROMPTの%?だと区別できませんでした。

% setopt printexitvalue
% ruby -e 'Process.kill(9, $$)'; print -P '%?'
zsh: 7485 killed     ruby -e 'Process.kill(9, $$)'
137
% ruby -e 'exit(137)'; print -P '%?'
zsh: 7486 exit 137   ruby -e 'exit(137)'
137
% ruby -e 'Process.kill(15, $$)'; print -P '%?'
zsh: 7487 terminated  ruby -e 'Process.kill(15, $$)'
143
% ruby -e 'exit(143)'; print -P '%?'
zsh: 7488 exit 143   ruby -e 'exit(143)'
143
%

-- 
|ZnZ(ゼット エヌ ゼット)
|西山和広(Kazuhiro NISHIYAMA)