In article <yey65c477l2.fsf@cms26.imr.tohoku.ac.jp>,
        t-nissie@No-spam.imr.tohoku.ac.jp writes:
> と、()を使うとfalseの返すstatusをうまくひろってくれないようです。

  これは多分、tcshの場合「( )」内がサブシェルに解釈されるので、$?がサブ
シェルのその時点でのstatus、つまり0になるからなんでしょうね。

  ということは

        false; sh -c "echo $?; pwd" | mail …

にすれば、$?を解釈するのはメインのシェルなのでうまくいくのでは。

                                                nide@ics.nara-wu.ac.jp