備忘録: /bin/sh で直前のコマンドのリターンコードを知る方法 #tips #unix #bourne shell
/bin/sh (Bourne shell)では直前のコマンドのリターンコードは $? で参照できる。
例えばこんな感じで使う。
#!/bin/sh
cp /foo/bar /hoge/hoge
if [ $? != 0 ] ; then
echo "Failed to copy file /foo/bar to /hoge/hoge"
exit 1
fi
/foo/bar を /hoge/hoge にコピーするのに失敗したらエラーメッセージを出す、という単純な例。もちろん $? を一旦、別の変数に取っておけば複数のコマンドの結果を組み合わせて判定するなんてコトもできる。そんな凝ったことしたコトないけど。
普段あんまり使わないのですぐ忘れちゃうんだよね。
仕方ないので、そのたびググって見つけてはいるのだけど、いい加減、時間の無駄なので備忘録。Posterous経由でEvernoteに食わせとく。

