Windowsの便利な使い方
ファイル操作 → robocopy
robocopy
ファイルやフォルダのユーザ情報を維持したままコピーする
Vista 7 8 10

機能

ディレクトリごとファイルをコピーする。ワイルドカードを利用したコピーを始め、条件を指定してのコピーやエラー時の再試行、ログの記録など、多彩な機能を持つ。フォルダ同期やバックアップ目的でも利用される。

形式

robocopy [source file] [target file] (option)



オプション

オプション 説明
/S サブディレクトリをコピーするが空のディレクトリはコピーしない
/E 空のディレクトリを含むサブディレクトリをコピーする
/LEV:n コピー元ディレクトリツリーの上位nレベルのみをコピーする
/Z 再起動可能モードでファイルをコピーする
/B バックアップモードでファイルをコピーする
/ZB 再起動可能モードを使用し、アクセスが拒否された場合はバックアップモードを使用する
/J バッファーなし I/O を使用してコピーする
/EFSRAW 暗号化されたすべてのファイルをEFS RAWモードでコピーする
/COPY:Flag ファイルにコピーする情報を指定する(既定値は/COPY:DAT)
コピーフラグ 説明
D データ
A 属性
T タイムスタンプ
S セキュリティ(NTFS ACL)
O 所有者情報
U 監査情報
/SEC ファイルのコピー時にセキュリティ情報もコピーする (=/COPY:DATS)
/COPYALL ファイル情報をすべてコピーする(=/COPY:DATSOU)
/NOCOPY ファイル情報をコピーしない
/SECFIX 全てのファイルのセキュリティを修正する
/TIMFIX 全てのファイルのタイムスタンプを修正する
/PURGE 既にコピー元に存在しないファイル/ディレクトリをコピー先から削除する
/MIR ディレクトリツリーをミラー化する
/MOV ファイルを移動する(コピー完了後にコピー元から削除する)
/MOVE ファイルとディレクトリを移動する(コピー完了後にコピー元から削除する)
/DCOPY:Flag ディレクトリにコピーする情報を指定する(既定値は/DCOPY:DA)
コピーフラグ 説明
D データ
A 属性
T タイムスタンプ
/NODCOPY ディレクトリ情報をコピーしない
/NOOFFLOAD ファイルコピー時にWindowsのオフロードコピーを利用しない

ファイル選択オプション

オプション 説明
/A アーカイブ属性が設定されているファイルのみをコピーする
/M アーカイブ属性が設定されているファイルのみをコピーし、リセットする
/XF [FileName] 指定した名前、パス、ワイルドカードに一致するファイルを除外する
/XD [DirectoryName] 指定した名前とパスに一致するディレクトリを除外する
/XC 変更されたファイルを除外する
/XN 新しいファイルを除外する
/XO 古いファイルを除外する
/XX コピー先にだけ存在するファイルとディレクトリを除外する
/XL コピー元にだけ存在するファイルとディレクトリを除外する
/MAX:n nバイトより大きいファイルを除外する
/MIN:n nバイトより小さいファイルを除外する
/MAXAGE:n n日より古いファイルを除外する
/MINAGE:n n日より新しいファイルを除外する
/MAXLAD:YYYYMMDD YYYYMMDD日以降にアクセスしていないファイルを除外する
/MINLAD:YYYYMMDD YYYYMMDD日以降にアクセスしたファイルを除外する
※YYYYMMDDの代わりに1900未満の数nにすることで、n日の意味となる
/FFT タイムスタンプ精度を2秒としてコピーする(FATなどに利用)

再試行オプション

オプション 説明
/R:n コピーが失敗した場合の再試行数を指定する
既定値:1,000,000(回)
/W:n 再試行の間の待機時間を指定する
既定値:30(秒)
/REG /Rと/Wの設定値を既定値としてレジストリに登録する
/TBD 共有名が定義されるのを待機する

ログオプション

オプション 説明
/L いずれのファイルにも、コピー、タイムスタンプの追加、削除を実施しない
/X 選択したファイル以外の余分なファイルも記録する
/V コピーをスキップしたファイルの詳細情報を記録する
/TS 出力にコピー元ファイルのタイムスタンプを含める
/FP 出力にファイルの完全なパス名を含める
/BYTES サイズをバイトで出力する
/NS ファイルサイズをログに記録しない
/NC ファイルクラスをログに記録しない
/NFL ファイル名をログに記録しない
/NDL ディレクトリ名をログに記録しない
/NP コピーの完了率を表示しない
/ETA コピーするファイルの推定完了時刻を表示する
/LOG:FileName ログファイルに状態を出力する(既存ファイルを上書く)
/LOG+:FileName ログファイルに状態を出力する(既存ファイルに追記)
/UNILOG:FileName ログファイルにUNILOGで状態を出力する(既存ファイルを上書く)
/UNILOG+:FileName ログファイルにUNILOGで状態を出力する(既存ファイルに追記)
/TEE コンソールウィンドウとログファイルに表示する
/UNICODE UNILOGで状態を出力する

ジョブオプション

オプション 説明
/JOB:JobFile 指定したジョブファイルからパラメーターを取得する
/SAVE:JobFile 指定したジョブファイルにパラメーターを保存する
/QUIT コマンドラインの処理後に終了する
/NOSD コピー元ディレクトリを指定しない
/NODD コピー先ディレクトリを指定しない
/IF 後続のファイルを含む

コマンド例

robocopy C:¥sample F:¥sample CドライブからFドライブにディレクトリごとコピーする
robocopy C:¥sample F:¥sample *.txt ワイルドカードを利用して、テキストファイルのみをコピーする
robocopy C:¥sample ¥¥TargetServer¥sample /MIR /XD temp /R:1 CドライブからTargetServerにディレクトリごとコピーするが、tempフォルダは除外し、再試行は1回のみとする
robocopy C:¥sample F:¥sample /MAXAGE:20100101 /log+:C:¥Temp¥Log_robocopy.txt 最終更新日が2010年1月1日より新しいディレクトリ/ファイルをコピーするとともに、ログファイルを出力する


関連ページ

xcopy ・・・ファイルをディレクトリ構造ごとコピーする
copy ・・・ファイルをコピーする
del ・・・ファイルを削除する
move ・・・ファイルを移動する
rd / rmdir ・・・ディレクトリを削除する