- PR -

ROBOCOPYのレポート出力について

1
投稿者投稿内容
香月
会議室デビュー日: 2006/02/10
投稿数: 16
投稿日時: 2007-02-16 15:58
いつもお世話になります。

ROBOCOPYコマンドを使って、GPOでログオフ時にバッチを走らせ、
ミラーバックアップ処理をしようと思っています。

robocopy "%UserProfile%¥My Documents" ¥¥server1¥backup¥%USERNAME%¥%COMPUTERNAME%¥backup /R:5 /xo /sec /v /mir >> ¥¥server1¥backup¥%USERNAME%¥log.txt

このようなバッチを作成して、正常に動作はしたのですが、/vでログ出力を
するのに、末尾に追記させるようにしているため、ログが巨大になりすぎてしまいます。

エラーログだけでなく、標準ログは一応取得はしておきたいのですが、
ログを末尾に追記ではなく、数回分のログを記録するだけ、とか、
制限を付けて、その制限を超えた場合にログファイルを上書きする、とか、
週をまたいだら別のログファイルにする、とか…
そんなような事はできますでしょうか?
表現が下手ですみません。要はログファイルが単一ファイルで巨大になって欲しくないのです。

どうぞよろしくお願いいたします。
dellgate
大ベテラン
会議室デビュー日: 2004/02/20
投稿数: 198
投稿日時: 2007-02-16 17:39
(バッチになりますが・・・)
簡単なのは、

for /f "usebackq TOKENS=1,2" %%i in (`date /t`) do if "%%j"=="" set TODAYWORK=%%i
set TODAY=%TODAYWORK:/=%

robocopy "%UserProfile%¥My Documents" ¥¥server1¥backup¥%USERNAME%¥%COMPUTERNAME%¥backup /R:5 /xo /sec /v /mir >> ¥¥server1¥backup¥%USERNAME%¥%TODAY%.txt

とかすれば、一日単位でログが取得可能ですよね。

前処理で工夫すれば、一週間とかファイルサイズでもできるでしょう。
/+LOG /LOG オプションを使って工夫するのも良いかもしれません。

ありきたりな回答とは思いますが。。。。
香月
会議室デビュー日: 2006/02/10
投稿数: 16
投稿日時: 2007-02-19 16:50
dellgateさま、早速にご回答ありがとうございました。

私の作成方法が悪いのだと思うのですが、
¥¥server1¥backup¥%USERNAME%¥%TODAY%.txt
と設定して、何故か作成されるtxtファイルが、「.txt」の拡張子がなく、
日付オンリーの拡張子なしのファイルが作成されてしまってしまいました。。

今回は
¥¥server1¥backup¥%USERNAME%¥%¥%Date:~0,4%-%Date:~5,2%.txt
のように、「2007-02.txt」と作成するにさせていただきました。
せっかくご回答頂いたのにすみません。。

ありがとうございました!
またどうぞよろしくお願いいたします。m(__)m
1

スキルアップ/キャリアアップ(JOB@IT)