Windowsでは、パス名が260文字より長くなると削除も移動もコピーも出来ない状態になります。
実はRobocopyでは、長いパス名やフォルダ名・ファイル名を扱えます。
以下の例は、深いフォルダ構成の中身を削除する場合です。
たとえば D:\folder\folder\folder\folder\~・・・・・ と続く深いフォルダがあるとします。
この中身を削除したい場合、パス名が長すぎるとエラーとなってできません。
そこで、空のフォルダ \tempを作成してその中身を/PURGE 指定すると、当然\tempの中は空なので、\folderの中身が削除されます。
ROBOCOPY D:\temp D:\folder /NOCOPY /PURGE /NP > d:\test.log
ファイル数やフォルダ数が多い場合には一度に削除しきれない場合があります。その場合はログファイルを確認して失敗数を控えて2回目を実行してください。
2回目のログファイルで失敗数が減っている場合は、確実に処理は有効に働いていますので、失敗が無くなるまで繰り返すだけです。
コメントする