ドラマ『カンナさーん ! 』
明るいことは良いことなんでしょう。たいていの人は明るい人が好きなんでしょうね。六千枚の値札のミスも、明るく乗り切ります。
でも現実カンナさんみたいな人が近くにいたら、なんだか面倒そう。ああでも、その面倒と思うことさえも通り越して、楽しくなるんでしょう。
さて。面倒なのは、大量のファイルのコピーです。バックアップとったりとか。古いストレージだからなのか私のPC環境では、ファイルコピー中に、よくPCがいかれてしまいます。
robocopyなら中断したファイルコピーの再開も簡単です。
では実験用の6000個のファイルを作ります。
PS C:\Users\takk\aaa> cd dir1
PS C:\Users\takk\aaa\dir1> 1..6000 | %{1..1000 >> file$_.txt}
PS C:\Users\takk\aaa\dir1> (gci -name).count
6000
PS C:\Users\takk\aaa\dir1> cd ..
PS C:\Users\takk\aaa>
ファイル数は以下のとおり6000です。
PS C:\Users\takk\aaa> (gci dir1).count 6000 PS C:\Users\takk\aaa>
ではdir1をコピーしてdir2を作成します。コピーを途中で中断させます。
PS C:\Users\takk\aaa> robocopy /ndl /nfl /z dir1 dir2
-------------------------------------------------------------------------------
ROBOCOPY :: Windows の堅牢性の高いファイル コピー
-------------------------------------------------------------------------------
開始: 2017年8月1日 21:57:44
コピー元 : C:\Users\takk\aaa\dir1\
コピー先 : C:\Users\takk\aaa\dir2\
ファイル: *.*
オプション: *.* /NDL /NFL /DCOPY:DA /COPY:DAT /Z /R:1000000 /W:30
------------------------------------------------------------------------------
PS C:\Users\takk\aaa> (gci dir2 -name).count
2941
PS C:\Users\takk\aaa>
半分の3000弱で停止しました。
ではコピーの再開です。同じコマンド実行するだけです。
PS C:\Users\takk\aaa> robocopy /ndl /nfl /z dir1 dir2
-------------------------------------------------------------------------------
ROBOCOPY :: Windows の堅牢性の高いファイル コピー
-------------------------------------------------------------------------------
開始: 2017年8月1日 21:59:04
コピー元 : C:\Users\takk\aaa\dir1\
コピー先 : C:\Users\takk\aaa\dir2\
ファイル: *.*
オプション: *.* /NDL /NFL /DCOPY:DA /COPY:DAT /Z /R:1000000 /W:30
------------------------------------------------------------------------------
------------------------------------------------------------------------------
合計 コピー済み スキップ 不一致 失敗 Extras
ディレクトリ: 1 0 0 0 0 0
ファイル: 6000 3059 2941 0 0 0
バイト: 56.00 m 28.55 m 27.45 m 0 0 0
時刻: 0:00:15 0:00:15 0:00:00 0:00:00
速度: 1925621 バイト/秒
速度: 110.184 MB/分
終了: 2017年8月1日 21:59:20
PS C:\Users\takk\aaa>
6000
PS C:\Users\takk\aaa>
結果をみてみると、コピー済の2941ファイルがスキップされ、残りの3059ファイルだけコピーされたことがわかります。
dir1のファイルがすべて、dir2にコピーされました。
dir1とdir2の内容は一致するでしょうか。
PS C:\Users\takk\aaa> $dir1=gci dir1 -name | %{get-filehash dir1\$_}
PS C:\Users\takk\aaa> $dir2=gci dir1 -name | %{get-filehash dir2\$_}
PS C:\Users\takk\aaa> diff $dir1 $dir2
PS C:\Users\takk\aaa>
差分が表示されませんでした。一致したということです。


コメント