こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

バッチファイルのrdでログを吐きたい

現在rdコマンドを使い、失敗した場合、成功した場合どのフォルダを削除したか、等のログを吐きたいのですが、ログが吐けません

ログの吐き方をご存知の方ご教授いただければと思います

フォルダ構成

-log.txt
-test
-rd.bat

rd.batを実行すると、testフォルダが削除され、log.txtに記述されます
また、rd.batはtest2を削除しようとしますが、test2というフォルダは存在しないため、エラーをlog.txtに記述します

rd.batの内容
@echo off
rd test /S /Q >> log.txt
rd test2 /S /Q >> log.txt

この状態で実行しますと、log.txtは何も書き込まれないままです
echoをつけて
echo rd test /S /Q >> log.txt
にするとrdが実行されません

どなたかご存知の方ご教授よろしくお願いいたします

投稿日時 - 2009-06-09 20:56:32

QNo.5030567

すぐに回答ほしいです

質問者が選んだベストアンサー

エラーメッセージは標準エラー出力に出力されますから、
標準出力だけファイルにリダイレクトしてもファイルには記録されません。

以下のようにして、標準エラー出力もリダイレクトしてください。

(rd test2 /S /Q 2>&1) >>log.txt

投稿日時 - 2009-06-09 21:28:49

補足

早速の解凍ありがとうございます!
助かります!!
標準エラー出力も考えたのですが、私の説明不足で混乱させてしまったかもしれません
申し訳ありません
今rdで行う処理がエラーになるか、エラーにならないかわからないものとして以下の処理を行いたいと思っています

rd test /S /Q >> log.txt
rd test2 /S /Q >> log.txt

今回の場合2番目のrd test2は確かにエラー出力で上手くいくのですが、一番目のrd testが上手くログに残りません。成功しているためエラーとして出力されないからです

エラーになるか、ならないか、分からないといった条件で何か記述方法ご存知でしたらご教授お願いいたします

投稿日時 - 2009-06-10 00:14:58

ANo.1

このQ&Aは役に立ちましたか?

0人が「このQ&Aが役に立った」と投票しています

回答(1)

あなたにオススメの質問