- - PR -
外部コマンドの成功か失敗の判別方法
投稿者 | 投稿内容 |
---|---|
|
投稿日時: 2007-06-07 13:37
Javaから外部コマンドで何かを実行し、その後にecho $?などで成功か失敗かを調べたいのですが、Javaプログラム自体は成功しているので、どれも0(成功)と見なされてしまいます。
これをうまく動作させるためには、どのようにしたらいいでしょうか? |
|
投稿日時: 2007-06-07 14:30
Java アプリを終了するときに System.exit() の引数で外部コマンドの終了コードを指定してはいかがでしょう。
|
|
投稿日時: 2007-06-07 14:50
その前に、Javaから外部コマンドを実行(Runtime#exec()?)したときの結果が分からないのでしょうか?
|
|
投稿日時: 2007-06-07 14:59
> mioさん
エラー文を解析すればわかるでしょうけど、それだと面倒なので、$?を調べようということになりました。 > インギさん Javaアプリを終了せずに、同じプロセスの中で行うには難しいでしょうか? java Main と実行すると、Mainの中でsnmpwalk...を実行し、さらにそのsnmpwalk...が成功か失敗かを調べたいです。 |
|
投稿日時: 2007-06-07 15:10
??
JavaからJavaのプログラムを外部プロセスとして呼び出しているのですか? |
|
投稿日時: 2007-06-07 15:19
> nogiseさん
いえ、Javaから外部コマンドとしてsnmpwalkなどを実行し、そのコマンドの成功か失敗かをそのJavaからecho $?などで調べられないかなぁということです。 |
|
投稿日時: 2007-06-07 15:28
Process#exitValue()
の話? see JavaDoc |
|
投稿日時: 2007-06-07 15:54
ちゃんと復帰値が取れるなら、それで調べたほうがいいと思いますが、エラー文の解析は正規表現使えば簡単にできると思いますよ。
|