From: matz@... (Yukihiro Matsumoto) Date: 2000-11-16T14:22:29+09:00 Subject: [ruby-list:26009] Re: 子プロセスから標準出力と終了ステータスを得たい まつもと ゆきひろです In message "[ruby-list:25998] Re: 子プロセスから標準出力と終了ステータスを得たい" on 00/11/16, yharuo@mail7.dddd.ne.jp writes: ||上記の「困ってしまう」問題がその理由です。しかも、$?変数は直 ||接にはPerlから受け継いでいますから、シェルに合わせることはか ||えって「意味を変える」ことになってしまいますです。 | |Rubyは無条件でPerlに準拠した、というのがその答えなら私の質問は |無意味だったようですね えーと、それは「しかも」と続けた2番目の(どちらかというと些細 な)理由で、私、もうひとつ重要な >シェルで $? が WEXITSTATUS の値が入っているのは、core dumpや >シグナルなどの WEXITSTATUS 以外の部分の値の処理(具体的にはエ >ラーメッセージ出力)をシェル自身が行っているからです。Ruby(や >Perl)は、そのような処理の余地がありませんから(これらの言語は >より「普通の言語」に近いので、ただ単にエラーメッセージを出さ >れただけでは困ってしまう)、waitの戻り値の WEXITSTATUS 以外の >部分を保存する必要があります。 ^^^^^^^^^^^^^^^^^^^^^^^ という理由をしめしたのですが、読めませんでしたか? まつもと ゆきひろ /:|)