- 締切済み
WebOTXのコマンド実行結果ステータス取得方法
WebOTXのdeployコマンドをバッチで実行しようとしています。 以下のコマンドに続けて、エラー処理を記述したいのですが、 dosコマンドのerrorlevelではエラーを取得できません。 cmd /c otxadmin deploy --user *** --password *** --force=true WARファイル WebOTXコマンドのエラーを拾う方法を教えてください。 よろしくお願いします。
- みんなの回答 (2)
- 専門家の回答
みんなの回答
- いけだ ひろし(@ike-2000)
- ベストアンサー率53% (69/129)
#1です。 cmd /c otxadmin deploy --user *** --password *** --force=true WARファイル >log.txt または cmd /c otxadmin deploy --user *** --password *** --force=true WARファイル 2>log.txt ではダメですか。
- いけだ ひろし(@ike-2000)
- ベストアンサー率53% (69/129)
cmd /cでも%errorlevel%には値が戻ります(一応確認してみました)。 otxadminが値を返していないと考えられます。 エラーコードは当てになりそうに無いので別の方法を考えましょう。勝手に考えて見ます。 (1)案 エラーコードではなくで何かメッセージは出ていないのでしょうか?。otxadminはUNIX版もあるようなので、正常であればエラーメッセージが出ず、エラーのときだけメッセージが出る仕様ではないのでしょうか?。 (2)案 deployされた結果が分かるのであればそれを確認するのはいかがでしょう。先に出力先を削除しておいてdeployするのはどうでしょうか?。 ご検討ください。
お礼
引き続き回答いただきありがとうございます。 また、案を出していただきありがとうございました。 (1)案に関してですが、 otxadminのエラーメッセージはコマンドプロンプト上には表示されますが、 それもまた取得方法が分かりません。 イベントビューアにエラーが出ていればDOSコマンドで拾えるかと思いましたが、 出力されておらず・・・ (2)案に関してですが、 deployされた結果はファイルの日付が更新されていれば分かるのでしょうが、 それはそれでどのファイルを対象とするかなど、いろいろ問題が出てきてしまいます。 せっかく出していただいた案なのですが、 もう少し対応方法を検討してみようと思います。 何か良い案が出れば、こちらに更新させていただきます。
お礼
お礼・回答遅くなり申し訳ありません。 上記のコマンドで取得はできるようですが、DOSコマンドのerrorlevelで取得できる方法を発見しました。以下の通りです。 call otxadmin deploy --user *** --password *** --force=true WARファイル otxadminはバッチファイルでしたので、バッチファイルを呼び出し、その中でエラーが発生するする場合、callだと取得できるようです。 javaでいう、呼び出したメッソド内でexceptionが発生し、呼び出し元のcatchでexceptionを拾ったようなものでしょうか。 いろいろとお手数おかけしました。 ありがとうございました。