Robocopy

基本

コピー

 robocopy.exe src_dir dst_dir /e

コピー先にしかないファイルやフォルダは削除して、コピー

 robocopy.exe src_dir dst_dir /mir

コピーする内容を確認する(dryrun)

 robocopy.exe src_dir dst_dir /l

コピーする

 robocopy.exe src_dir dst_dir

src_dir内のファイルをコピーする。フォルダーはコピーしない。

フォルダーを指定してコピーする

 robocopy.exe src_dir\dir1 dst_dir\dir2
 src_dir\dir1\fileA.txt
 
 dst_dir\
 
 ↓
 
 dst_dir\dir2\fileA.txt

上の場合、dst_dirにdir2を作成して、dir1内のfileA.txtがdir2内のfileA.txtとしてコピーされる。

サブフォルダーをコピーする

全てのサブフォルダーをコピーする

 robocopy.exe src_dir dst_dir /e

空じゃないサブフォルダーをコピーする

 robocopy.exe src_dir dst_dir /s
 src_dir\dir1
        \dir2\fileB.txt
        \fileA.txt

上の場合dir1は空のフォルダーなのでコピーされない。dir2(とその中のfileB.txt)はコピーされる。

ミラーリングコピーする

 robocopy.exe src_dir dst_dir /mir
  • dst_dir以下のファイルとフォルダはsrc_dir以下のそれと全く同じになる。
  • なお、/mirオプションは下で紹介する/purgeオプションと/eオプションを合わせて指定する事と等価。

コピー元にないファイルとフォルダをコピー先から削除しつつ、ファイルとフォルダーをコピーする

 robocopy.exe src_dir dst_dir /purge
 src_dir\dir1\fileA.txt
        \fileB.txt
 
 dst_dir\dir1
        \dir2\fileC.txt
        \fileD.txt
 ↓
 
 dst_dir\dir1
        \fileB.txt
  • dst_dirにだけあったdir2(とその中のfileC.txt)とfileD.txtは削除されて、fileB.txtはコピーされる。
  • 但し、サブフォルダーは対象外なので、dir1\fileA.txtはコピーされない。
  • 合わせて/eオプションを付ければ(もしくは/purgeオプションではなく、/mirオプションを使えば)、dir1\fileA.txtはコピーされる。

コピー元にないファイルとフォルダをコピー先から削除する(新しくコピーはしない)

 robocopy.exe src_dir dst_dir /mir /nocopy
 src_dir\dir1\fileA.txt
        \fileB.txt
 
 dst_dir\dir1
        \dir2\fileC.txt
        \fileD.txt
 ↓
 
 dst_dir\dir1

上の場合、dst_dirからdir2やfileD.txtが削除される。新しくコピーはされない。

/COPYオプション

 copy dirA dirB /COPY:DT

コピー対象の条件

 File        Exists In   Exists In        Source/Dest     Source/Dest   Source/Dest
 Class       Source      Destination      File Times      File Sizes    Attributes
 =========== =========== ================ =============== ============= ============
 Lonely      Yes         No               n/a             n/a           n/a
 Tweaked     Yes         Yes              Equal           Equal         Different
 Same        Yes         Yes              Equal           Equal         Equal
 Changed     Yes         Yes              Equal           Different     n/a
 Newer       Yes         Yes              Source > Dest   n/a           n/a
 Older       Yes         Yes              Source < Dest   n/a           n/a
 Extra       No          Yes              n/a             n/a           n/a
 Mismatched  Yes (file)  Yes (directory)  n/a             n/a           n/a

デフォルトではLonelyとChangedとNewerとOlderがコピーされ、Sameはスキップされ、ExtraとMismatchedはログにリポートされる。

参考

http://superuser.com/questions/314503/what-does-robocopy-mean-by-tweaked-lonely-and-extra

参考


トップ   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS