ローカルで大量のファイルを管理しつつ、一部をDropboxで共有、iPadでもiCloudで関連ファイルを触る、みたいなプロジェクトが一段落したのでファイル整理。
ローカルをマスターにしておけばよかったものの、杜撰な管理によりDropboxやiCloudにしかないファイルやバージョン差分が乱立。
楽してファイルを整理したい、、、。
自分でスクリプト書いてもいいかな〜とか思ったけどせっかくなら先人の知恵を、、、の備忘録。
というわけで
fdupes
でファイルの重複を確認します。
インストール
brew
で簡単インストール。
$ brew install fdupes
実行
単純に重複を確認。
$ fdupes -rnA <directory_pathA> <directory_pathB> <directory_pathC>...
/Users/user/A/220401/xxx.wav
/Users/user/dropbox/B/220401/xxx.wav
/Users/user/dropbox/B/20402/xxx_220402.wav
/Users/user/A/220403/xxx.pdf
/Users/user/Library/Mobile\ Documents/com\~apple\~CloudDocs/C/xxx.pdf
...
-r
は再帰、-n
は0バイトファイルの無視。
Macだと.DS_Store
が大量に出てきて非常に邪魔なので-A
で隠しファイルを無視。
ディレクトリは1個以上の指定が可能。今回だとAはローカル、BはDropbox、CはiCloud、みたいな感じ。
元は対象ディレクトリにはlogic楽曲制作ファイルも格納していたが、中の音声データにまで反応しちゃって邪魔。
よく調べもしてないが例外処理は出来なさそうなので一旦別ディレクトリに移した。
感想
-d
で自動削除までやってくれるのだけど、全部残すべきな場合があったり、消すにしてもどれを残すかは個別に選びたい。
ので、結果のテキストを編集してrm
で消した後にフォルダ整理をしていきました。スマートじゃない、、、。
各ファイルでどれ残すか選べるようにできたらなあ、てかGUIの方が楽だなあ、そういうソフトあるんだろうなあ、、。
普通にshellスクリプト書けばファイルごとに聞くように作れるだろうし、そっちのほうがいいかも。