RoboSync: RobocopyのためのGUIツール
本サイトで公開しているツールです。ダウンロードはこのバナーをクリック!
Version 1.3.27 をリリースしました! (2021/1/1)
RobocopyをGUIから実行できるようにするツールです。コマンドプロンプトを表示することなく、GUI画面からほぼマウス操作だけで実行までできます。
Robocopyがバックグラウンドでそのまま実行されますので設定に迷うことはありません。
・ 複数のコピー項目の作成と管理。
・ スクリプトファイル(バッチファイル)出力が可能。スケジューラによるバックグラウンド処理にも使えます。
・ Robocopyによるコピー実行前に、実行プレビュー(/L)、パラメータのチェック(/QUIT)が可能。
・ Robocopyのパラメータ設定の簡易チェック、Robocopy実行前の簡易チェックを行います。
・ Robocopy実行前後で実行するスクリプトを定義可能。
・ Robocopy実行途中での中断、実行ログの履歴管理と保存が可能。
Robocopy はフォルダ・ファイルをコピーするツールですが、コピー先に既に同じファイルが存在する場合はコピーをせず、必要なファイルだけをコピーするため、非常に効率よく短時間でコピーを行うことができ、とても便利です。
意外とあまり説明されていませんが、Robocopyのデフォルトの動作は、以下のようになります。主なポイントを記載します。
クラス | クラス条件 | コピー動作 | |||||
---|---|---|---|---|---|---|---|
コピー元 | コピー先 | 更新時刻 | サイズ | 属性 | デフォルト コピー動作 |
関連 オプション |
|
Lonely | ある | ない | - | - | - | する | /XLで除外 |
Tweaked | ある | ある | 一致 | 一致 | 不一致 | しない | /ITで含める |
Same | ある | ある | 一致 | 一致 | 一致 | しない | /ISで含める |
Changed | ある | ある | 一致 | 不一致 | - | する | /XCで除外 |
Newer | ある | ある | 元>先 *2 | - | - | する | /XNで除外 |
Older | ある | ある | 元<先 *2 | - | - | する | /XOで除外 |
Extra | ない | ある | - | - | - | - *3 | /XXで除外 /PURGE, /MIR |
Mismatched | ある*1 | ある*1 | - | - | - | - | - |
*1: コピー元がファイルでコピー先がフォルダ、またはその逆
*2:
「元>先」はコピー元ファイルの方が新しい、「元<先」はコピー先ファイルの方が新しい
*3: /PURGEまたは/MIR指定時コピー先を削除
robocopy <コピー元フォルダ> <コピー先フォルダ> [<ファイル>[ ...]] [<オプション>]
コピー元フォルダ | コピー元フォルダを指定します。
|
コピー先フォルダ | コピー先フォルダを指定します。
|
ファイル | コピーの対象とするファイル名を指定します。
|
オプション | オプションを指定します。 |
/S | サブディレクトリをコピーしますが、空のディレクトリはコピーしません。 |
/E | 空のディレクトリを含むサブディレクトリをコピーします。
関連記事:「RoboSync設定事例:個人PCのバックアップ設定例」 |
/LEV:n | コピー元ディレクトリ ツリーの上位 n レベルのみをコピーします。 |
/Z | 再起動可能モードでファイルをコピーします。
関連記事:「Robocopy /Zオプションの再起動可能モードとは」 |
/B | バックアップ モードでファイルをコピーします。
|
/ZB | 再起動可能モードを使用します。アクセスが拒否された場合、バックアップ モードを使用します。 |
/J | バッファーなし I/O を使用してコピーします (大きなファイルで推奨)。 |
/EFSRAW | 暗号化されたすべてのファイルを EFS RAW モードでコピーします。 |
/COPY:コピーフラグ | ファイルにコピーする情報を指定します。(既定値は /COPY:DAT)
|
/SEC | セキュリティと共にファイルをコピーします (/COPY:DATS と同等)。 |
/COPYALL | ファイル情報をすべてコピーします (/COPY:DATSOU と同等)。 |
/NOCOPY | ファイル情報をコピーしません (/PURGE と共に使用すると便利)。
関連記事:「Robocopy コピー元に存在しないファイルをコピー先から削除する」 |
/SECFIX | スキップしたファイルも含むすべてのファイルのファイルセキュリティを修正します。
|
/TIMFIX | スキップしたファイルも含むすべてのファイルのファイル時刻を修正します。 |
/PURGE | コピー元に存在しないコピー先のファイル・フォルダを削除します。 関連記事:「Robocopy /MIRオプションの動作と注意点」 |
/MIR | ディレクトリ ツリーをミラー化します (/E /PURGE と同等)。
関連記事:「Robocopy /MIRオプションの動作と注意点」 |
/MOV | ファイルを移動します (コピー後にコピー元から削除)。 |
/MOVE | ファイルとディレクトリを移動します (コピー後にコピー元から削除)。 |
/A+:[RASHCNET] | コピーされたファイルに指定の属性を追加します。 |
/A-:[RASHCNET] | コピーされたファイルから指定の属性を削除します。 |
/CREATE | ディレクトリ ツリーと長さ 0 のファイルのみを作成します。
関連記事:「Robocopy /CREATEオプションの目的と使い方」 |
/FAT | 8.3 FAT ファイル名のみを使用してコピー先ファイルを作成します。 |
/256 | 256 文字を超える非常に長いパスのサポートをオフにします。 |
/MON:n | コピー元を監視し、n 回以上の変更があった場合に再度実行します。 |
/MOT:m | コピー元を監視し、m 分後に変更があった場合に再度実行します。 |
/RH:hhmm-hhmm | 実行時間 - 新しいコピーを開始できる時刻を設定します。 |
/PF | 実行時間をファイルごと (パスごとではない) に確認します。 |
/IPG:n | 低速回線で帯域幅を解放するため、1パケット(64KB)送信ごとにnミリ秒待機する。 |
/SJ | ジャンクション配下のファイルやフォルダを追跡コピーするのではなく、ジャンクションを作成します。
|
/SL | シンボリックリンクのリンク先の対象をコピーするのではなく、シンボリックリンクを作成します。
|
/MT[:n] | n 個のスレッドのマルチスレッド コピーを実行します(既定値 8)。 n は 1 から 128 までの値である必要があります。 このオプションは、/IPG および /EFSRAW オプションと互換性がありません。 パフォーマンスの向上のため、/LOG オプションを使用して出力をリダイレクトします。 |
/DCOPY:コピーフラグ | ディレクトリにコピーする情報 (既定値は /DCOPY:DA)。
|
/NODCOPY | ディレクトリ情報をコピーしません (既定では /DCOPY:DA が実行されます)。 関連記事:「Robocopy: /DCOPY:DATのすすめ」 |
/NOOFFLOAD | Windows のオフロードをコピーするメカニズムを使用せずにファイルをコピーします。 |
/COMPRESS | ファイル転送中にネットワーク圧縮を要求します (適用可能な場合)。 |
/A | アーカイブ属性が設定されているファイルのみをコピーします。 関連記事:「RoboSyncを使って差分・増分バックアップを設定してみる」 関連記事:「RoboSync設定事例:増分バックアップ(直近20回,14日以内保存)」 |
/M | アーカイブ属性のあるファイルのみをコピーし、リセットします。 関連記事:「RoboSyncを使って差分・増分バックアップを設定してみる」 関連記事:「RoboSync設定事例:増分バックアップ(直近20回,14日以内保存)」 |
/IA:[RASHCNETO] | 指定されたいずれかの属性が設定されているファイルのみを含みます。 |
/XA:[RASHCNETO] | 指定されたいずれかの属性が設定されているファイルを除外します。 |
/XF files... | 指定された名前/パス/ワイルドカードに一致するファイルを除外します。
|
/XD dirs... | 指定された名前/パス/ワイルドカードに一致するフォルダ(ディレクトリ)を除外します。
|
/XC | 変更された(Changed)ファイルを除外します。 |
/XN | 新しい(Newer)ファイルを除外します。 |
/XO | 古い(Older)ファイルを除外します。 |
/XX | コピー先にだけ存在するファイルとディレクトリ(eXtra)を除外します。 |
/XL | コピー元にだけ存在するファイルとディレクトリ(Lonely)を除外します。 |
/IS | タイムスタンプとファイルサイズが同一なファイル(Same)を含みます。 |
/IT | ファイル属性だけが異なるファイル(Tweaked)を含めます。 |
/MAX:n | 最大ファイル サイズ - n バイトより大きいファイルを除外します。 関連記事:「Robocopy /Zオプションの再起動可能モードとは」 |
/MIN:n | 最小ファイル サイズ - n バイトより小さいファイルを除外します。 関連記事:「Robocopy /Zオプションの再起動可能モードとは」 |
/MAXAGE:n | 最長ファイル有効期間 - n 日より古いファイルを除外します。
|
/MINAGE:n | 最短ファイル有効期間 - n 日より新しいファイルを除外します。
|
/MAXLAD:n | 最大最終アクセス日 - n で指定する値以後に使用していないファイルを除外します。
|
/MINLAD:n | 最小最終アクセス日 - n で指定する値以後に使用されたファイルを除外します。
|
/FFT | FAT ファイル時間 (2 秒の粒度) を仮定します。 |
/DST | 1 時間の DST 時間差を補正します。 |
/XJ | ジャンクションポイントとシンボリックリンクを除外します。 (デフォルト動作では含まれます)
|
/XJD | ディレクトリのジャンクションポイントとシンボリックリンクを除外します。 |
/XJF | ファイルのシンボリックリンクを除外します。 |
/IM | Modifiedクラスを含めます |
/R:n | 失敗したコピーに対する再試行数: 既定値は 1,000,000。 |
/W:n | 再試行と再試行の間の待機時間: 既定値は、30 秒です。 |
/REG | 既定の設定としてレジストリに /R:n と /W:n を保存します。
|
/TBD | 共有名が定義されるのを待ちます (再試行エラー 67)。 |
/LFSM | 空き領域不足モードで動作します。コピー実行中に、コピー先ボリュームの空き容量がボリューム全体の10%以下になる場合、コピーを一時停止し、空き容量ができるのを待ちます。 |
/LFSM:n[KMG] | 空き領域不足モードで動作します。コピー実行中に、コピー先ボリュームの空き容量が、n [K:kilo,M:mega,G:giga] バイト以下になる場合、コピーを一時停止し、空き容量ができるのを待ちます。 |
/L | 処理内容の表示のみを行いコピー先フォルダに変更を加えません。コピー、削除、タイムスタンプの追加などを行いません。 |
/X | 選択されたファイルのみではなく、余分なファイルをすべて報告します。 |
/V | スキップされたファイルの情報も表示します。 |
/TS | コピー元ファイルのタイムスタンプを表示します。 |
/FP | ファイルの完全なパス名を表示します。 |
/BYTES | ファイルサイズをバイトで表示します。 |
/NS | ファイルサイズをログに表示しません。 |
/NC | ファイルクラスをログに表示しません。 |
/NFL | ファイル名をログに表示しません。 |
/NDL | ディレクトリ名をログに表示しません。 |
/NP | コピーの完了率を表示しません。 |
/ETA | コピーするファイルの推定完了時刻を表示します。 |
/LOG:ファイル | ログファイルに出力します (既存のログファイルを上書きします)。
関連記事:「Robocopyのログ出力の文字コードについて調べてみた」 |
/LOG+:ファイル | ログファイルに出力します (既存のログファイルに追加します)。
関連記事:「Robocopyのログ出力の文字コードについて調べてみた」 |
/UNILOG:ファイル | ログファイルに UNICODE で出力します (既存のログファイルを上書きします)。
関連記事:「Robocopyのログ出力の文字コードについて調べてみた」 関連記事:「Robocopyを英語表示にしてログ表示の桁ずれをなくす」 |
/UNILOG+:ファイル | ログファイルに UNICODE で出力します (既存のログファイルに追加します)。
関連記事:「Robocopyのログ出力の文字コードについて調べてみた」 |
/TEE | ログファイル出力時、コンソールウィンドウにも出力します。 関連記事:「Robocopyを英語表示にしてログ表示の桁ずれをなくす」 |
/NJH | ジョブヘッダーを表示しません。 |
/NJS | ジョブサマリを表示しません。 |
/UNICODE | 状態を UNICODE で出力します。
関連記事:「Robocopyのログ出力の文字コードについて調べてみた」 |
/JOB:ジョブ名 | ジョブ名で指定されたジョブファイルからパラメーターを取得します。 |
/SAVE:ジョブ名 | ジョブ名で指定されたジョブファイルにパラメーターを保存します。 |
/QUIT | コマンドラインパラメータの解釈のみ行います。パラメータ表示後終了します。 |
/NOSD | コピー元フォルダを指定しません。 |
/NODD | コピー先フォルダを指定しません。 |
/IF files... | コピーの対象とするファイル名を指定します
|
戻り値 | 説明 |
---|---|
0 | コピーは行われませんでした。処理は正常に終了ました。ミスマッチ(Mismatched)も見つかりませんでした。全てのファイルはコピー先に存在しています。 |
1 | ファイルのコピーが行われました。 |
2 | コピー先にのみ存在するファイルが見つかりました。コピーされたファイルはありませんでした。 |
3 | ファイルのコピーが行われました。コピー先にのみ存在するファイルが見つかりました。処理は正常に終了しました。 |
5 | ファイルのコピーが行われました。ミスマッチ(Mismatched)が見つかりました。処理は正常に終了しました。 |
6 | コピー先にのみ存在するファイルが見つかりました。ミスマッチ(Mismatched)が見つかりました。コピーされたファイルはありませんでした。処理は正常に終了しました。全てのファイルはコピー先に存在しています。 |
7 | ファイルのコピーが行われました。ミスマッチ(Mismatched)が見つかりました。コピー先にのみ存在するファイルが見つかりました。 |
8 | コピーできなかったファイルがあります。 |
8以上 | 何らかの異常が発生しました。 |
戻り値の算出方法ですが、各ファイルの処理結果が下表の結果種別ごとにカウントされ、該当するものがあった結果種別のビット値が合計され、戻り値として算出されます。
結果種別 (ビット値) |
説明 |
---|---|
0 |
コピーする必要がないため、何も実施しなかった ログの「スキップ(Skipped)」としてカウント |
1 |
ファイルのコピーが成功した (フォルダーのコピーは含まれません) ログの「コピー済み(Copied)」としてカウント |
2 | コピー先にのみ存在するファイル/フォルダが確認された ログの「Extras」としてカウント |
4 |
同じ名前で別の種類のファイルが存在した(Mismatched) ログの「不一致(Mismatch)」としてカウント |
8 |
コピーに失敗した ログの「失敗(FAILED)」としてカウント |
16 | 致命的エラー。全く処理できなかったなど。 |
戻り値の参照方法は、robocopy実行後に、以下のようなスクリプトで判定可能です。
if %errorlevel% == 0 echo no error
/A+, /A-, /IA, /XA オプションで指定するファイル属性は以下の通り。
属性名 | 意味 |
---|---|
R | 読み取りのみ属性 (Read only) |
A | アーカイブ属性 (Archive) |
S | システム属性 (System) |
H | 隠し属性 (Hidden) |
C | 圧縮属性 (Compressed) |
N | インデックス抑止属性 (Not content indexed) |
E | 暗号化属性 (Encrypted) |
T | 一時ファイル属性 (Temporary) |
O | オフライン属性 (Offline) |
【関連記事・関連コンテンツ】