標準の copy
Windows のビルトインはあまり良くありませんが、Windows には、はるかに効率的な 2 つの高度なコマンドが付属しています:xcopy
と robocopy
.特に、ACL や代替データ ストリームなどの高度なファイルシステム機能を完全に制御する必要がある場合は、robocopy
が最適なツールです。
たとえば、大規模なディレクトリ構造をコピーする場合、ターゲットをフラグメント化しないことが望ましい場合があります。 . robocopy
の標準呼び出し はすでにそれが得意ですが、サブディレクトリが作成されるとディレクトリ エントリが更新されるため、断片化されたディレクトリを取得できます。これを防ぐには、robocopy
を実行します。 2 つのパスで、1 つ目はファイルの内容をコピーせずにターゲット ディレクトリ構造のみを作成し、2 つ目は実際にファイル本体をコピーします。
全体で、robocopy
非常に効率的で、NTFS 機能を完全に認識しています。
Ubuntu Linux で見られる速度の一部は、おそらくファイル キャッシングです。私の知る限り、Linux のファイル コピーでは、ファイル キャッシュの使用を最小限に抑える努力はまったく行われていません。
Linux では、RAM の約 50% より小さいファイルをコピーすると、ファイル全体がファイル キャッシュにコピーされ、時間の許す限りディスクに書き込まれます。これは非常に高速に見えますが、他のより有用なファイルをキャッシュから追い出します。これらは、Web キャッシュ ファイル、電子メール、構成ファイル、フォント ファイルなどです。
Windows XP では、ファイル キャッシュも考慮せずにコピーしていました。しかし、Windows Vista では、Microsoft は Explorer を変更して、コピー時に限られた量のファイル キャッシュを使用するようにしました。これにより、システムの残りの部分に対する大きなファイルのコピーの影響が軽減されます。ただし、比較的小さなファイル コピーの速度も、ハードディスクの速度まで低下します。
Windows では、Teracopy を使用します。これにより、Explorer が持つ全体的な愚かさの問題が解決されます。
Ubuntu では、ファイルのコピーが非常に高速であることがわかりました。
リムーバブル ドライブを使用している場合でも、[ファイル操作] ダイアログは消えません。ダイアログが消えた直後にドライブを安全に取り出そうとすると、エラー メッセージが表示されます。ただし、データは通過します。
更新:Windows のファイル操作は、おそらくサービスとレジストリとのすべての統合が遅いです。 (Gnome の) Nautilus は単純なプロセスだと思いますが、少なくとも Explorer のような負荷や中断はありません。