http://www.atmarkit.co.jp/ait/articles/1309/27/news116.html
https://pf-j.sakura.ne.jp/program/dos/doscmd/robocopy.htm
操作方法
robocopyのオプションの説明の前に、robocopyで扱うファイル(やフォルダ)の「クラス」について説明しておく。クラスとは、転送元と転送先のファイルの状態や属性情報などを比較して、2つのファイルがどのような関係にあるかを判断する基準のことである。robocopyには次のような8つのクラスがある。
クラス | コピー元 | コピー先 | 更新時刻 | サイズ | 属性 |
---|---|---|---|---|---|
Lonely | ある | ない | − | − | − |
Tweaked | ある | ある | 一致 | 一致 | 不一致 |
Same | ある | ある | 一致 | 一致 | 一致 |
Changed | ある | ある | 一致 | 不一致 | − |
Newer | ある | ある | 元>先 | − | − |
Older | ある | ある | 元<先 | − | − |
Extra | ない | ある | − | − | − |
Mismatched | ある* | ある* | − | − | − |
「ある」「ない」は、ファイルが存在するかどうか、「一致」「不一致」は更新時刻やサイズが同じかどうか、「元>先」はコピー元ファイルの方が新しい、「元<先」はコピー先ファイルの方が新しい、という意味。例えば「Lonely」はコピー元にしかないファイル、「Extra」はコピー先にしかないファイル、「Tweaked」はサイズも更新時刻も同じだが、属性情報が異なるファイル。「Mismatched*」は、ファイルとフォルダのように、名前は同じだが種類が違う場合のクラス。
デフォルトでは、robocopyは「Changed」「Newer」「Older」となっているファイルだけをコピーするようになっている。つまり、内容が変更されているか、コピー元の方が新しいか、逆にコピー元の方が古い(コピー先の方が新しい)ファイルだけをコピーする。
コピーするファイルの選択
Robocopyではオプションからのファイルを直接指定するほか、特定の条件に合ったファイルを選択する機能などがあります。条件の種類とそれに対応するオプションは以下の通りです。
条件の種類 | 「含める」オプション | 「除外する」オプション | ||
---|---|---|---|---|
ファイル名 | /IF | パターンに一致するファイルのみ選択 | /XF | パターンに一致するファイルを除外 |
(直接ファイル名指定) | /XD | (親)ディレクトリ名で除外 | ||
日付・時刻 | (なし) | /XN | コピー元が新しい場合除外 | |
/XO | コピー元が古い場合除外 | |||
/MAXAGE | 最終更新が古いファイルを除外 | |||
/MINAGE | 最終更新が新しいファイルを除外 | |||
/MAXLAD | 指定日以降にアクセスの無いファイルを除外 | |||
/MINLAD | 指定日以降にアクセスのあるファイルを除外 | |||
ファイル属性 | /IA | 指定属性のファイルのみ選択 | /XA | 指定属性のファイルを除外 |
/IT | 属性変更のみのファイルを含める | |||
/A | アーカイブ属性を持つファイルのみ選択 | |||
/M | アーカイブ属性を持つファイルのみ選択(処理後解除) | |||
リンク | (なし) | /XJ | ジャンクションポイント・シンボリックリンクを除外 | |
/XJD | ディレクトリのジャンクションポイント・シンボリックリンクを除外 | |||
/XJF | ファイルのシンボリックリンクを除外 | |||
サイズ | (なし) | /MAX | サイズを超えるファイルを除外 | |
/MIN | サイズに満たないファイルを除外 | |||
その他 | /IS | 「一致」するファイルを含める | /XX | コピー先にのみ存在するファイルを除外 |
/XL | コピー元にのみ存在するファイルを除外 | |||
/XC | 中身のみ異なるファイルを除外 |
Tweet
最終更新時間:2018年01月04日 18時36分12秒