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 は帯域占有を避けるための 気遣いです。