Robocopy vs Copy

Windows7でOS標準コマンドとして用意されている「Robocopy」を使用することで
通常のコピーより速くファイルのコピーを行えます。


◯Robocopyとは?
 WindowsVista以降でOS標準コマンドとして用意されるようになった為、
 特別なインストールが不要で使用することが出来るWindowsのファイルコピーコマンドです。

 元々はリモートのファイルサーバー同士でフォルダーを同期させるために作られたコマンドで
 主に以下の様な機能があります。
  ・エラー時の再試行
  ・ネットワーク切断時のコピーの中断と再開
  ・ファイルサイズを限定してのコピー
  ・コピー先にある余分なファイルの削除
  ・256文字を超える長いパス名の処理
  ・動作ログの記録
  ・コピーの進行状態の常時表示
  ・ジョブによる同期作業内容の定義

◯Robocopyの使い方
 コマンドラインで以下の様に実行。

1
robocopy c:/src d:/dest
 c:/srcとd:/destのフォルダー間での全ファイルのコピー
 デフォルトでは、次の種類のファイルだけが上書きでコピーされる。
  ・コピー先に存在しないファイル
  ・更新日付が異なるファイル(新しいファイルだけではなく、コピー元の方が古くてもコピー対象となる)
  ・日付は同じでもサイズが異なるファイル

 オプション等はこちら

◯速度の比較
 通常のコピーとRobocopyで処理時間の比較を行いました。

 処理内容
  2.3ギガのファイルデータのコピーに掛かった時間を計測。
  ※時間は複数回の平均値、pythonで計測

 例1:Local Path → Local Path
  通常コピー: 45.56秒
  Robocopy : 37.88秒

 例2:Local Path → Network Saver
  通常コピー: 1分42.40秒
  Robocopy :   29.58秒

 例3:Network Saver → Local Path
  通常コピー: 58.32秒
  Robocopy : 22.63秒

 全体的にRobocopyでコピーを行ったほうが速い結果となりました。
 もっと多いデータ量になった場合にはこの差が顕著にでるそうです。

 ちなみにフリーソフトを使用すれば更に高速化が可能になるそうですが
 今回はデフォルト環境下での動作に限定しましたのでそちらは割愛致します。

この記事が気に入ったらサポートをしてみませんか?