Windows OS の rsync 的なコマンド【robocopy.exe】

OS 標準で rsync 似なコマンドが Windows に搭載されていることを知りました。これをメモします。

robocopy.exe /E c:\Temp\source C:\Temp\target

コマンドラインのロボコピーという名称で私は誤解していました。これは 基本的に rsync 相当なのです。Windows の凄さを見直しました。(ただし、この名称は 誤解生むよなぁ...)

  • 「/E」オプションが、デフォルトな rsync と同等な挙動になります。(詳細は、各自 オプションをみて確認してください)。
  • 「/MIR」オプションだと、コピー先のファイルが状況により削除されます。一方で、ディレクトリの同期・複写ということだと、/MIR オプションの利用が妥当です。

その後、知人からの指摘で もうすこしオプションが必要そう

その後、知人からの指摘で もうすこしオプションが必要そうなことを知りました。

robocopy.exe /E /FFT /R:1 /XJD /XJF /COPY:DT /IPG:10 c:\Temp\source C:\Temp\target

もう少し使ってみて、結論を導きます。

  • /XJD /XJF が無いと、シンボリックリンクで無限ループする場合があるとのことです。
  • /R が無いと エラー発生時の挙動が ほぼ無限ループのように見えてしまう場合があるとのことです。
  • /IPG は帯域占有を避けるための 気遣いです。