Windowsのコマンドラインでファイルコピーするならxcopyよりrobocopy

Windowsで、バッチ処理でファイルのバックアップを行う場合、
xcopyコマンドでファイルコピーを行うと、ファイルパスが長いファイルがあった場合にエラーとなり処理が停止します。

これはファイルシステムの制限による物で、回避する事ができません。
NTFS ファイル システム上のファイルまたはフォルダを削除できない

原因 4 : ファイル パスの長さが MAX_PATH の文字制限を超えている
ファイル パスに問題があると、ファイルの表示、編集、または削除を行うことができない場合があります。

通常のディレクトリにエクスプローラからアクセスしている場合は
ファイルの作成段階でエラーになりますが、
ネットワークドライブとして割り当てている様な場合(実際のパスは長いが、クライアントがアクセスするパスは短い場合)は、
長いファイルパスを作成できてしまいます。

回避策の一つとして、xcopyではなく255文字以上のファイルパスに対応しているrobocopyを使う方法があります。

Robocopy
Xcopy

使用例

・Eドライブのfromフォルダ以下をdドライブのtoフォルダへコピーする。
・ログをc:\copy.logに残す
・更新されていないファイルはコピーしない
・進行状況は表示しない
ディレクトリ名はログに記録しない

robocopy e:\from\ d:\to\ /S /E /XO /NP /NDL /R:0 /XO /XD "e:\$RECYCLE.BIN" "e:\from\hogehoge" /LOG:c:\copy.log