目次

「PC利用Tips」一覧に戻る

Windowsのrobocopyでファイル同期



目的

ファイルのバックアプが重要ですが、Windowsではrobocopyコマンドで簡単に同期ができます。

Powershellのターミナルからやります。


オプション

/DCOPY:DAT   フォルダのタイムスタンプを維持する
  D:代替データストリームのコピー
  A:拡張ファイル属性のコピー
  T:タイムテーブルのコピー

/R:0 /W:0    エラー時に即スキップ。 止まらずに進む。

/LOG + /TEE  「ログを取りつつ、画面にも進捗を出す」。

/XJD /XJF   システム上の特殊なリンクを回避。

/XD   ゴミ箱などの不要なシステムフォルダを除外。
attrib コマンドの役割
attrib はファイルやフォルダの「属性(Attribute)」を変更するコマンドです。

-H (Hidden): 「隠しファイル」属性を解除します。

-S (System): 「システムファイル」属性を解除します。

注:+ だと属性を付与、- だと解除という意味になります。

robocopy でドライブのルート(例 P: 直下)を /mir でコピーすると、コピー先のフォルダに元のドライブが持っていた特殊な属性まで引き継がれてしまうことがあります。

ドライブの根本(ルートディレクトリ)には、通常、目に見えないシステム設定が含まれています。これをコピーした結果、バックアップ先の S:\Backup_Sync_P が 「システム専用の隠しフォルダ」 と判定されてしまい、エクスプローラーから突然消えたように見える(表示されない)現象が起こることがあります。


PC側からGoogleドライブにコピー

robocopy  "P:\photo\Smartphone_Takaaki_share\2023"  "H:\My Drive\Photo\Smartphone_Takaaki\2023" /mir /DCOPY:DAT

/DCOPY:DAT   フォルダのタイムスタンプを維持する
  D:代替データストリームのコピー
  A:拡張ファイル属性のコピー
  T:タイムテーブルのコピー


データドライブを別のドライブにコピー

DドライブからSドライブにコピー

robocopy D: S: /mir /DCOPY:DAT  /XD "System Volume Information" "`$RECYCLE.BIN"
robocopy P: S:\Backup_Sync_P /mir /DCOPY:DAT  /XD "System Volume Information" "`$RECYCLE.BIN"
おすすめ

robocopy_P2S.bat

@echo off

robocopy P: S:\Backup_Sync_P /mir /DCOPY:DAT /R:0 /W:0 /XJD /XJF /LOG:"S:\robocopy_p2s.log" /NP /NDL /TEE /XD "System Volume Information" "$RECYCLE.BIN"
attrib -H -S "S:\Backup_Sync_P"





「PC利用Tips」一覧に戻る