作成 2010.02.07
更新 2015.12.07
更新 2015.12.07
ROBOCOPY のヘルプ
Windows の堅牢性の高いファイル コピー
目次
使用法
ROBOCOPY コピー元 コピー先 [ファイル [ファイル]...] [オプション]
| 引数 | 説明 | 
| コピー元 | コピー元ディレクトリ (ドライブ:\パスまたは \\サーバー\共有\パス)。 | 
| コピー先 | コピー先ディレクトリ (ドライブ:\パスまたは \\サーバー\共有\パス)。 | 
| ファイル | コピーするファイル (名前/ワイルドカード: 既定値は「*.*」です) | 
コピー オプション
| オプション | 説明 | 
| /S | サブディレクトリをコピーしますが、空のディレクトリはコピーしません。 | 
| /E | 空のディレクトリを含むサブディレクトリをコピーします。 | 
| /LEV:n | コピー元ディレクトリ ツリーの上位 n レベルのみをコピーします。 | 
| /Z | 再起動可能モードでファイルをコピーします。 | 
| /B | バックアップ モードでファイルをコピーします。 | 
| /ZB | 再起動可能モードを使用します。アクセスが拒否された場合、バックアップ モードを使用します。 | 
| /EFSRAW | 暗号化されたすべてのファイルを EFS RAW モードでコピーします。 | 
| /COPY:コピーフラグ | 
ファイルにコピーする情報 (既定値は /COPY:DAT)。 (コピーフラグ: D= データ、A= 属性、T= タイムスタンプ)。 (S= セキュリティ =NTFS ACL、O= 所有者情報、U= 監査情報)。  | 
| /DCOPY:T | ディレクトリ タイムスタンプをコピーします。 | 
| /SEC | セキュリティと共にファイルをコピーします (/COPY:DATS と同等)。 | 
| /COPYALL | ファイル情報をすべてコピーします (/COPY:DATSOU と同等)。 | 
| /NOCOPY | ファイル情報をコピーしません (/PURGE と共に使用すると便利) | 
| /SECFIX | スキップしたファイルも含むすべてのファイルのファイル セキュリティを修正します。 | 
| /TIMFIX | スキップしたファイルも含むすべてのファイルのファイル時刻を修正します。 | 
| /PURGE | 既にコピー元に存在しないコピー先のファイル/ディレクトリを削除します。 | 
| /MIR | ディレクトリ ツリーをミラー化します (/E および /PURGE と同等) | 
| /MOV | ファイルを移動します (コピー後にコピー元から削除)。 | 
| /MOVE | ファイルとディレクトリを移動します (コピー後にコピー元から削除)。 | 
| /A+:[RASHCNET] | コピーされたファイルに指定の属性を追加します。 | 
| /A-:[RASHCNET] | コピーされたファイルから指定の属性を削除します。 | 
| /CREATE | ディレクトリ ツリーと長さ 0 のファイルのみを作成します。 | 
| /FAT | 8.3 FAT ファイル名のみを使用してコピー先ファイルを作成します。 | 
| /256 | 256 文字を超える非常に長いパスのサポートをオフにします。 | 
| /MON:n | コピー元を監視し、n 回を超える変更があった場合に再度実行します。 | 
| /MOT:m | コピー元を監視し、変更があった場合 m 分間再度実行します。 | 
| /RH:hhmm-hhmm | 実行時間 - 新しいコピーを開始できる時刻です。 | 
| /PF | 実行時間をファイルごと (パスごとではない) に確認します。 | 
| /IPG:n | 低速回線で帯域幅を解放するためのパケット間ギャップ (ミリ秒) 。 | 
| /SL | 対象ではなくシンボリック リンクをコピーします。 | 
| /MT[:n] | 
個のスレッドのマルチスレッド コピーを実行します (既定値 8)。 n は 1 から 128 までの値である必要があります。 このオプションは、/IPG および /EFSRAW オプションと互換性がありません。 パフォーマンスの向上のため、/LOG オプションを使用して出力をリダイレクトします。  | 
ファイル選択オプション
| オプション | 説明 | 
| /A | アーカイブ属性が設定されているファイルのみをコピーします。 | 
| /M | アーカイブ属性のあるファイルのみをコピーし、リセットします。 | 
| /IA:[RASHCNETO] | 指定されたいずれかの属性が設定されているファイルのみを含みます。 | 
| /XA:[RASHCNETO] | 指定されたいずれかの属性が設定されているファイルを除外します。 | 
| /XF ファイル [ファイル]... | 指定された名前/パス/ワイルドカードに一致するファイルを除外します。 | 
| /XD ディレクトリ [ディレクトリ]... | 指定された名前/パスに一致するディレクトリを除外します。 | 
| /XC | 変更されたファイルを除外します。 | 
| /XN | 新しいファイルを除外します。 | 
| /XO | 古いファイルを除外します。 | 
| /XX | コピー先にだけ存在するファイルとディレクトリを除外します。 | 
| /XL | コピー元にだけ存在するファイルとディレクトリを除外します。 | 
| /IS | 同一ファイルを含みます。 | 
| /IT | 異常なファイルを含めます。 | 
| /MAX:n | 最大ファイル サイズ - n バイトより大きいファイルを除外します。 | 
| /MIN:n | 最小ファイル サイズ - n バイトより小さいファイルを除外します。 | 
| /MAXAGE:n | 最長ファイル有効期間 - n 日より古いファイルを除外します。 | 
| /MINAGE:n | 最短ファイル有効期間 - n 日より新しいファイルを除外します。 | 
| /MAXLAD:n | 最大最終アクセス日 - n で指定する値以後に使用していないファイルを除外します。 | 
| /MINLAD:n | 
最小最終アクセス日 - n で指定する値以後に使用されたファイルを除外します。 (n < 1900 の場合、n = n 日です。それ以外は、n = YYYYMMDD の日付です)。  | 
| /XJ | 接合ポイントを除外します (通常、既定で含まれます)。 | 
| /FFT | FAT ファイル時間 (2 秒の粒度) を仮定します。 | 
| /DST | 1 時間の DST 時間差を補正します。 | 
| /XJD | ディレクトリの接合ポイントを除外します。 | 
| /XJF | ファイルの接合ポイントを除外します。 | 
再試行オプション
| オプション | 説明 | 
| /R:n | 失敗したコピーに対する再試行数: 既定値は 1,000,000。 | 
| /W:n | 再試行と再試行の間の待機時間: 既定値は、30 秒です。 | 
| /REG | /既定の設定としてレジストリに R:n と /W:n を保存します。 | 
| /TBD | 共有名が定義されるのを待ちます (再試行エラー 67)。 | 
ログ オプション
| オプション | 説明 | 
| /L | リストのみ - いずれのファイルにも、コピー、タイムスタンプの追加、または削除を実施しません。 | 
| /X | 選択されたファイルのみではなく、余分なファイルをすべて報告します。 | 
| /V | スキップされたファイルを示す詳細出力を作成します。 | 
| /TS | 出力にコピー元ファイルのタイム スタンプを含めます。 | 
| /FP | 出力にファイルの完全なパス名を含めます。 | 
| /BYTES | サイズをバイトで出力します。 | 
| /NS | サイズなし - ファイル サイズをログに記録しません。 | 
| /NC | クラスなし - ファイル クラスをログに記録しません。 | 
| /NFL | ファイル リストなし - ファイル名をログに記録しません。 | 
| /NDL | ディレクトリなし - ディレクトリ名をログに記録しません。 | 
| /NP | 進行状況なし - コピーの完了率を表示しません。 | 
| /ETA | コピーするファイルの推定完了時刻を表示します。 | 
| /LOG:ファイル | ログ ファイルに状態を出力します (既存のログを上書きします)。 | 
| /LOG+:ファイル | ログ ファイルに状態を出力します (既存のログ ファイルに追加します)。 | 
| /UNILOG:ファイル | ログ ファイルに UNICODE で状態を出力します (既存のログを上書きします)。 | 
| /UNILOG+:ファイル | ログ ファイルに UNICODE で状態を出力します (既存のログに追加します)。 | 
| /TEE | コンソール ウィンドウとログ ファイルに出力します。 | 
| /NJH | ジョブ ヘッダーがありません。 | 
| /NJS | ジョブ概要がありません。 | 
| /UNICODE | 状態を UNICODE で出力します。 | 
ジョブ オプション
| オプション | 説明 | 
| /JOB:ジョブ名 | 名前の付いたジョブ ファイルからパラメーターを取得します。 | 
| /SAVE:ジョブ名 | 名前の付いたジョブ ファイルにパラメーターを保存します。 | 
| /QUIT | コマンド ラインの処理後に終了します (パラメーターの表示のため)。 | 
| /NOSD | コピー元ディレクトリを指定しません。 | 
| /NODD | コピー先ディレクトリを指定しません。 | 
| /IF | 後続のファイルを含みます。 | 
使用例
Vista 以降で /ZB や /COPYALL を使用する場合は、「管理者として実行」権限で実行する必要がある。
フォルダのコピーをする際にコピー先が実在しない場合は、コピー先の末尾に"\"マークをつける。
/EFSRAW は 2003 以前には存在しません。
フォルダのコピーをする際にコピー先が実在しない場合は、コピー先の末尾に"\"マークをつける。
/EFSRAW は 2003 以前には存在しません。
データの完全コピー
現在のユーザーでアクセスできないファイルはバックアップモードでコピーする。
空ディレクトリ コピー
アクセス権もSIDレベルでコピー
暗号化ファイルも復号しないでコピー
空ディレクトリ コピー
アクセス権もSIDレベルでコピー
暗号化ファイルも復号しないでコピー
C:\> ROBOCOPY コピー元 コピー先\ /ZB /E /COPYALL /EFSRAW
コピー元にファイルがない場合はコピー先のファイルも消す
C:\> ROBOCOPY コピー元 コピー先\ /MIR /COPYALL /EFSRAW
昨日(今から24時間以内に)修正したファイルのみコピー
C:\> ROBOCOPY コピー元 コピー先\ /S /COPYALL /EFSRAW /MAXAGE:1
D2Dバックアップ用
毎日のバックアップで使用する。
コピーに失敗したファイルは2秒後にリトライした後あきらめる。
(失敗するファイルは、破損しているかロックされている、もしくはアクセス権の無いファイルが考えられる)
失敗したファイルは翌日実行。
daily_robocopy.bat
コピーに失敗したファイルは2秒後にリトライした後あきらめる。
(失敗するファイルは、破損しているかロックされている、もしくはアクセス権の無いファイルが考えられる)
失敗したファイルは翌日実行。
daily_robocopy.bat
@ECHO OFF VERIFY ON SET LOGNAME=robocopy_%date:~-10,4%%date:~-5,2%%date:~-2,2%.log ROBOCOPY コピー元 コピー先\ /ZB /MIR /COPYALL /EFSRAW /MAXAGE:2 /R:1 /W:2 /FP /V /LOG:%LOGNAME%EFSを使用していないことが明らかでRAID構成などディスクの本数が多い場合は、/MT で実行したほうが高速(な場合が多い)。
@ECHO OFF VERIFY ON SET LOGNAME=robocopy_%date:~-10,4%%date:~-5,2%%date:~-2,2%.log ROBOCOPY コピー元 コピー先\ /ZB /MIR /COPYALL /MT:4 /MAXAGE:2 /R:1 /W:2 /FP /V /LOG:%LOGNAME%MAXAGE オプションを使う上でのリスクとして、フォルダーを移動した場合や別のところから古いファイルをコピーや移動した場合に、バックアップ対象からもれる可能性がある。 これを回避するため、アーカイブ属性を参照する方法も掲載しておく。バックアップ中にアーカイブ属性をオフにする書き込みが発生するため、初回バックアップにおいて非常に時間がかかる可能性がある。また、diskshadow.exe でスナップショットをコピーする場合は書き込みエラーとなるため効果が無い。
@ECHO OFF VERIFY ON SET LOGNAME=robocopy_%date:~-10,4%%date:~-5,2%%date:~-2,2%.log ROBOCOPY コピー元 コピー先\ /ZB /MIR /COPYALL /MT:4 /M /R:1 /W:2 /FP /V /LOG:%LOGNAME%
タグ: Windows