SOFTELメモ Developer's blog

会社概要 ブログ 調査依頼 採用情報 ...
技術者募集中

Linuxのコマンドの戻り値ってどういう意味があるの?

問題

Linuxのコマンドの戻り値って何か意味があるの?

linux

答え

Linuxのコマンドを、php から exec('unzip hoge.zip'); みたいに呼ぶことがあると思います。

下のように、第2、第3引数を渡しておくと、コマンドの出力結果、終了コード(戻り値)を入れてくれます。

exec('unzip hoge.zip', $r, $e);

コマンドはphpの関数ではないので、phpのエラーログなどにはエラーは残らず、コマンドのエラーを知りたいときは、この出力と戻り値を見ることになります。

この戻り値ですが、0が正常、エラーがあった時に0以外になるのが一般的です。

では、0以外のとき、どう読み取ればよいのかというと、それはコマンドによります。

phpの関数なら、php.net(マニュアル)を見るように、
Linuxのコマンドだったら、man page(やっぱりマニュアル)を見ましょう。

サーバーにログインしたら man unzip とコマンドを入力するとマニュアルが表示されます。

Web上でもマニュアルページがゴロゴロ転がっているのですぐ見つかります。

unzipコマンドが 3 と返して来たらファイルが壊れている、9ならファイルがないなどがわかります。

関連するメモ

コメント