ちゃんとコピーできたか確認する方法
Finderでファイルをコピーしたとき、それがちゃんとコピーできたか(ムズカシイ用語ではベリファイと言うらしい)を確認する方法はあるだろうか?
Appleのサポートは、この問いに対して、あくまでコピーしたファイルが正常に開けるかを確認する以外にないと言った。
だが、これは素人向けの答えでしかない。もし、何千何万という数のファイルがあったら、Appleのサポートはそれを全て開いて検証するのだろうか…そう考えてみればすぐに分かる話だ。
いきなりだが、ちゃんとコピーできたか確認する方法は、以下に紹介する通り、いくつかある。
-
rsync
この手の話題を出すと、必ず登場するのがrsyncというコマンドだ。これはremote syncの略で、ネットワーク間や、PC間、同一PC上の異なるディレクトリなどで、2つのディレクトリを同期(synchronize)することができる。
rsyncを利用した様々なGUIアプリケーションもあるが、筆者はターミナルで直接叩く派である。スクリプトに応用したりもできる。慣れれば何ということはないが、使い方にやや癖がある。 -
Finder + diff
Finderは大量のファイルコピーには向かないというのが通説だが、最近のFinderは違うのではと密かに思っている。何より手軽だ。検証が必要な場合、筆者はdiffを使う。
diffは比較対象の差分を抽出するコマンドだ。diff -rq
とターミナルで叩き、コピー元フォルダ、次いでコピーしたフォルダの順にターミナルにドラッグ&ドロップ、リターンキーを押せば、ディレクトリ構造のまま比較してくれる。比較対象がバイナリファイルの場合、違いの有無だけが表示される。
つまり、この方法でも、ちゃんとコピーできたか確認できる。 -
チェックサム
ファイルだけならば、コピー後のファイルとコピー元のファイルの、例えばmd5を計算して比較すれば検証はできる。筆者は余りやらない。
実のところ、筆者が最も多用するのは、Finder + diffだ。むろんrsyncも使うが、バックアップなどのように同期すべき場合に限っている。どちらを使うかは、もう、好みの問題でしかない。
なんとなくまとまりに欠ける内容になった。本当はrsyncではなく、diffが良いと書きたかったが、調べるうちにrsyncも、その名の通りコピーの同一性を保証できることが分かって、こうなった。
以上。
参考サイト
この投稿へのトラックバック
トラックバックはありません。
- トラックバック URL
この投稿へのコメント