PHPの関数で、exec ( string $command [, array &$output [, int &$return_var]] )というのがあります。ある処理を行うと$return_var のところに 233 という値が帰ってきます。何かのエラーなんだと思いますが、どういうエラーなのかが分かりません。unixコマンドの終了ステータスの値が返ってくると書いてあるページがあったので、その値なのだと予想できるのですが、この値が何を意味しているかわかるかたいらっしゃいますでしょうか・・

回答の条件
  • URL必須
  • 1人2回まで
  • 登録:2007/06/25 20:12:39
  • 終了:2007/07/02 20:15:02

回答(3件)

id:studioes No.1

studioes回答回数522ベストアンサー獲得回数612007/06/25 23:09:44

ポイント35pt

 終了コードとは、そもそもプログラム毎に異なります。

 C言語のコードで言えば・・・

int main(){

return 0;

}

と言う感じで、このreturn値が終了コードです。

 慣例的に0は正常終了ですが、それ以外は何らかの意味がありますが、それはプログラム毎に異なります。

 従って、そのコマンドのドキュメントに記載がなければ、ソースコードを追うしかありません。

http://ylb.jp/2006b/proc/commandline/

id:b-wind No.2

b-wind回答回数3344ベストアンサー獲得回数4402007/06/25 23:25:40

ポイント35pt

Manpage of ERRNO

一応 exec の返り値はシステムによって違うのでOSを明記しないと正確な回答は出来ない。

とはいえある程度は POSIX で標準化されているのだが、手元の Linux 2.4.x や FreeBSD で試す限り、unknown error と出る。


つまり、これらのOSでは 233 というエラーは定義されていない。

id:samejima No.3

samejima回答回数92ベストアンサー獲得回数82007/06/27 19:15:23

ポイント10pt

シェルが加工した返り値ではないでしょうか。
http://www.linux.or.jp/JM/html/GNU_bash/man1/bash.1.html#lbAL

\small 233=128+N

\small N=105

ENOBUFSの可能性が高い。

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません