パスの長さが原因で大量のファイルのコピーに失敗した場合、どのファイルが転送されなかったかを知るにはどうすればよいでしょうか?

パスの長さが原因で大量のファイルのコピーに失敗した場合、どのファイルが転送されなかったかを知るにはどうすればよいでしょうか?

バックアップのために、あるドライブから別のドライブに大量のデータをコピーしようとしていました。Windows エクスプローラー内で、1 つのドライブから必要な最上位ディレクトリを CTRL+C でコピーし、次にバックアップするドライブで CTRL+P でコピーするだけで済みました。このプロセスを一晩実行し、戻ってきたときに、ファイル パスの長さが原因でフォルダーを転送できないというエラーが発生しました。問題がどの程度広範囲に及んでいるかを確認するために、毎回スキップを押しましたが、この理由で移動されなかったフォルダーは 3 つだけでした。

問題は、どのフォルダが転送されなかったのか正確にはわからないことです。最初にコピーできなかったディレクトリがわかっていれば、パスの長さを調べたり、(今になって知ったのですが) robocopy を使用してコピーしたりできます。転送されなかったディレクトリを正確に知るにはどうすればよいでしょうか? W

私がコピーしたものは、多数の分岐ディレクトリを含む 1.5TB のデータで構成されているため、手動でこれを行うことは不可能だと思います。スキップされたファイルのログはありますか? または、2 つの最上位フォルダーを比較して何が不足しているかを正確に確認する比較的簡単な方法はありますか?

答え1

Robocopy を使用すると、/L等しくないすべてのファイルのリストを取得できます。

以下は私が使用している行です (ほとんどの修飾子の意味は忘れてしまいましたが、ROBOCOPY /?説明はしています)。 を必ず残してください/L。そうしないと、コピーが始まります。

ROBOCOPY /E /Z /DCOPY:T /PURGE /FP "X:\...\SourceDir" "Y:\...\TargetDir" /L

関連情報