LoginSignup
2
1

More than 1 year has passed since last update.

外付けHDD間で大量の写真データを引っ越す羽目に

Posted at

Finderの限界を感じた瞬間...
外付けのHDDは時々不調になる。まあ、仕方ないかも、読み書き頻度高い使い方していて、消耗もするでしょう。
そのためにも、しっかりとバックアップもしているけど、バックアップサービスからデータを復旧するのは若干手間なので、不調のドライブからデータを取り出せるうちに別のドライブに退避した方が楽。
パスも全部維持できるから、後からLightroomにフォルダーパスだけ更新すればLibraryが狂うこともないし。

8Tのデータ、まあ、重い。Finderで過去にコピーしてたら、日単位の時間が必要だったので、流石に嫌だな〜と思い、他の方法を試した。
さらに、こちらの欠点があある:

  • Finderだと、家族がマシーン使いたくても若干躊躇する(まあ、小さい窓閉じちゃったらコピー停止だし・・・わかる)
  • どこまでコピーできたとか、ファイル単位の進捗がわからない(ただ気になるってだけだけど)
  • 前回の経験から、途中で中断した場合、フォルダー内容がまれにちゃんと補完されないことがあったりする
  • フォルダー内のファイルが一部だけ差分がある時、既存のファイルはスキップするというオプションが表示されるケースとされないケースがあり、無駄な作業することがある

なので、家族は触れることがない Terminal でうまいぐいにやってみよう。

使えるのは cprsync
cp の婆あい、アイルが多いと、too many arguments と怒られるやつです。このコマンドはちょっと回り道をで使う必要がある。
外付けのドライブ間コピーなので、パスは基本 /Volumes/* になるけど、自分の場合、ディスクに連番を降ってるので、こんな感じです:
コピー元: /Volumes/PICTURES\ 10
コピー先: /Volumes/PICTURES\ 13

今回、サブフォルダーの構成を維持しながら、コピー元にある 2020 と 2019 という二つのフォルダーを同時にコピーしたい。

使ったコマンドの例は以下です。速度の明確な差はそれほどないが、気持ち程度、cpの方が早そうな印象でした。

rsync 例

rsync -ruva -progress /Volumes/PICTURES\ 10/2020/. /Volumes/PICTURES\ 13/2020/ 

オプションの意味は「ターゲットファイルが新しければ上書きしないで、やってることを見せながら、ディレクトリー構成を維持して」コピーです。
※ ドライランしたい場合、 -n もつけてください。

出力例

building file list ... done
./
2020-02-02/KAS_5276.CR2
2020-02-02/KAS_5277.CR2
2020-02-02/KAS_5278.CR2
2020-02-02/KAS_5279.CR2

対象外(存在していて、コピーされない)ファイルは、そもそも出てきません。

cp 例

find /Volumes/PICTURES\ 10/2019/. -name "*.*" -print0 | xargs -0 -I {} cp -navR {} /Volumes/PICTURES\ 13/2019

オプションの意味は「ターゲットファイルが存在していたら上書きしないで、やってることを見せながら、ディレクトリー構成を維持して」コピーです。

出力例

PICTURES 10/2019/. -> PICTURES 13/2019/.
PICTURES 13/2019/./.DS_Store not overwritten
PICTURES 10/2019/./2019-06-14 -> PICTURES 13/2019/./2019-06-14
PICTURES 13/2019/./2019-06-14/KAS_0837.CR2 not overwritten
PICTURES 13/2019/./2019-06-14/KAS_0838.CR2 not overwritten
PICTURES 13/2019/./2019-06-14/KAS_0839.CR2 not overwritten
PICTURES 13/2019/./2019-06-14/KAS_0840.CR2 not overwritten
PICTURES 13/2019/./2019-06-14/KAS_0841.CR2 not overwritten
PICTURES 13/2019/./2019-06-14/KAS_0842.CR2 not overwritten
PICTURES 10/2019/./2019-06-14/TK2_5752.CR2 -> PICTURES 13/2019/./2019-06-14/TK2_5752.CR2
PICTURES 10/2019/./2019-06-14/TK2_5753.CR2 -> PICTURES 13/2019/./2019-06-14/TK2_5753.CR2
PICTURES 10/2019/./2019-06-14/TK2_5754.CR2 -> PICTURES 13/2019/./2019-06-14/TK2_5754.CR2

対象外のファイルも表示される。

2
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
1