Robocopy のログが見づらいので基本的な見方をまとめておく。
見るところはだいたい決まっているが、どういう状況でどのように記録されるかを検証しながら進めます。あくまで基本的な見方なので特殊なエラーの原因などの説明はしていませんのであしからず。
Robocopy ログの見方
そもそも Extra ってなんだよとか不一致って?とかあるのですが、百聞は一見に如かず、案ずるより産むが易し ということで新しいファイルが追加されたときやコピー元でファイルが削除されたときなど、実際にRobocopy コマンドを実行して結果をまとめてみました。
成功パターン
問題なくコピーが完了したパターンです。6個のファイルをコピーしています。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 |
------------------------------------------------------------------------------- ROBOCOPY :: Windows の堅牢性の高いファイル コピー ------------------------------------------------------------------------------- 開始: 2017年11月1日 21:32:04 コピー元 : \\192.168.2.100\data\ コピー先 : E:\backup\ ファイル: *.* オプション: *.* /NDL /S /E /DCOPY:T /COPY:DATSOU /PURGE /MIR /ZB /NP /XJF /XJD /R:0 /W:30 ------------------------------------------------------------------------------ 新しいファイル 592 \\192.168.2.100\data\music\akb48.txt 新しいファイル 1295 \\192.168.2.100\data\music\amuro.txt 新しいファイル 4686 \\192.168.2.100\data\music\nmb48.txt 新しいファイル 3484 \\192.168.2.100\data\picture\山.txt 新しいファイル 113364 \\192.168.2.100\data\picture\川.txt 新しいファイル 5226 \\192.168.2.100\data\picture\海.txt ------------------------------------------------------------------------------ 合計 コピー済み スキップ 不一致 失敗 Extras ディレクトリ: 3 2 1 0 0 0 ファイル: 6 6 0 0 0 0 バイト: 125.6 k 125.6 k 0 0 0 0 時刻: 0:00:00 0:00:00 0:00:00 0:00:00 速度: 4288233 バイト/秒 速度: 245.374 MB/分 終了: 2017年11月1日 21:32:04 |
オプションは表示の通り、コピー元をネットワーク共有、コピー先をローカルドライブとしています。
コピーされたファイル名が、以下の形式で記録されています。
1 |
新しいファイル 592 \\192.168.2.100\data\music\akb48.txt |
これは、新しいファイルがコピーされたということですね。「ファイル:」の行のコピー済みの列にも6が記録されていて6個のファイルがコピーされたことがわかります。
コピー元のディレクトリは2個ですが、ログのディレクトリの合計が3と表示されています。これはトップのディレクトリが1として含まれているのでしょうか。コピー済みとしては2が記録されており、成功していることがわかります。
新しいファイルを追加
コピー元に新しいファイル(ske48.txt)を追加して実行してみます。
1 2 3 4 5 6 7 8 9 10 |
------------------------------------------------------------------------------ 新しいファイル 32802 \\192.168.2.100\data\music\ske48.txt ------------------------------------------------------------------------------ 合計 コピー済み スキップ 不一致 失敗 Extras ディレクトリ: 3 0 3 0 0 0 ファイル: 7 1 6 0 0 0 バイト: 157.6 k 32.0 k 125.6 k 0 0 0 |
今回追加したファイルのみ 新しいファイル としてコピーが成功(コピー済み)したことがわかります。先程コピーした6個のファイルはコピー先にすでに存在するので、スキップ の列に記録されていますね。
削除
コピー元から既存のファイル(nmb48.txt)を削除して実行してみます。
1 2 3 4 5 6 7 8 9 10 |
------------------------------------------------------------------------------ *EXTRA File 4686 E:\backup\music\nmb48.txt ------------------------------------------------------------------------------ 合計 コピー済み スキップ 不一致 失敗 Extras ディレクトリ: 3 0 3 0 0 0 ファイル: 6 0 6 0 0 1 バイト: 153.0 k 0 153.0 k 0 0 4.5 k |
でました、EXTRA File。これがコピー元で削除されたファイルを示しています。
ログの下の方の各ファイル数の記録にも Extras に1が記録されています。
編集されたファイル
コピー元で既存ファイル(amuro.txt)を編集して実行してみます。
1 2 3 4 5 6 7 8 9 10 |
------------------------------------------------------------------------------ 新しい 56894 \\192.168.2.100\data\music\amuro.txt ------------------------------------------------------------------------------ 合計 コピー済み スキップ 不一致 失敗 Extras ディレクトリ: 3 0 3 0 0 0 ファイル: 6 1 5 0 0 0 バイト: 207.3 k 55.5 k 151.8 k 0 0 0 |
新規にファイルが追加された際は、新しいファイル と記録されていましたが、既存ファイルが更新された場合は 新しい と記録されるようです。環境によっては より新しい と記録されることもあるようです。
いずれにしても コピー済み が1としてコピーが成功しています。
不一致
コピー先に存在する nmb48.txt と同じ名前のフォルダをコピー元に作成して実行してみます。
1 2 3 4 5 6 7 8 9 10 11 |
------------------------------------------------------------------------------ *不一致 -1 \\192.168.2.100\data\music\nmb48.txt\ ★今回作成したフォルダ *EXTRA File 4686 E:\backup\music\nmb48.txt ★もともと存在していたファイル ------------------------------------------------------------------------------ 合計 コピー済み スキップ 不一致 失敗 Extras ディレクトリ: 4 1 3 0 0 0 ファイル: 6 0 6 0 0 1 バイト: 207.3 k 0 207.3 k 0 0 4.5 k |
コピー済み の ディレクトリが1、Extras の(削除された)ファイル が1と表示されている通りだが、作成したフォルダがコピー先にもともと存在していたファイルを上書きしてしまった。
対象のフォルダ名の表示には 不一致 と記録されている。フォルダ・ファイルの種類が一致していないということだろうか。
コピー先に存在するフォルダ名と同じ名前でファイルを作成してコピーした場合も同じ結果(上書きされる)となったのでどちらにしても気を付けたい箇所です。
このへんは、Robocopy コマンドの戻り値でも判定できるのだろうか。。。
以上です。
↓↓↓ Powershell のおすすめレシピ ~結局はオライリー~