Robocopy で余分なファイルを最初に削除する方法

Robocopy で余分なファイルを最初に削除する方法

私が使う

Robocopy src dst /MIR /NFL /NDL /NJH /NJS

src をバックアップします。プロセス中に、ターゲット ハード ドライブに十分なスペースがないと表示されます。src 内の多くのファイルが削除されているため、ターゲットには確かに十分なスペースがあります。

ROBOCOPY が最初に余分なファイルを削除してスペースを解放し、次に新しいファイルまたは更新されたファイルをコピーするようにフラグを設定するにはどうすればよいでしょうか?

答え1

ご指摘のとおり、robocopy はおそらくツリーをクロールして必要な変更を適用しようとしています。これには新しいファイルのコピーも含まれます。最初に古いコンテンツを削除するとツリーを 2 回クロールする必要があるため、削除は行われません。基盤となるファイルシステムによっては、かなり遅くなる可能性があります。

理論上は、 は必要なことを行います。これは と/mirの組み合わせです。ただし、コピー先がすでにいっぱいなので、新しいコピーがコピーされる前に削除操作を実行する必要があります。これを行うには、 を使用できるはずです。 とは独立してこれを実行する必要が生じる可能性があります。/purge/e/nocopy/purge

Robocopy ヘルプ:

  • /e サブディレクトリをコピーします。このオプションには空のディレクトリも含まれることに注意してください。詳細については、「備考」を参照してください。
  • /purge ソースに存在しなくなった宛先ファイルとディレクトリを削除します。詳細については、「備考」を参照してください。
  • /mir はディレクトリ ツリーをミラーリングします (/e と /purge を組み合わせたものと同等)。詳細については、「備考」を参照してください。
  • /nocopy ファイル情報をコピーしません (/purge と一緒に使用すると便利です)。

関連情報