MacがNAS等の共有ドライブに作成してしまう不可視ファイルがうざいと言われたので、一括削除するスクリプトを書いてみました。

2019年11月28日

Macユーザやっていて肩身が狭い事といえば、

「共有ドライブに__MACOSXとか.AppleDoubleとか.DS_Storeってファイルがたくさんできていてうっとおしいよ!」

とか言われてしまう事に尽きる(?)かと思います。

作らないように出来れば良いのですが・・・ちゃんと網羅出来るこれといった方法は無いようです。

しょうがない・・・自分でケツ拭くか・・・。

といった訳で、一括削除するスクリプトを書いてみました。

既存ツールも無くはないようですが、スケジュール実行したかったので自分が使いやすいように自作しました。

需要があればどうぞ。

不可視ファイル(通称ゴミファイル)削除用スクリプト:dtf – delete trash files

こちらからどうぞ。

donkysoft/dtf – GitHub

どういうわけだがpythonで書いています。

linuxやmacの人であればそのまま使えます。

Windowsの人は、Pythonをインストールするか、cygwin等からどうぞ。

Python Japan User’s Group

Cygwin

使い方

1.dtf.pyを、ゴミファイルを削除したいディレクトリに配置する

以下のように git clone して、

git clone https://github.com/donkysoft/dtf.git

cp dtf/dtf.py [コピー先]

とする。(実際に使うのはdtf.pyのみ)

git clone の場合はパーミッションが引き継がれていると思いますが、実行権限がない場合は付与しておく。

donkysoft/dtf – GitHub

ここからdtf.pyだけ落としてきてもOK。

2.削除対象ファイル・ディレクトリを確認する

初期状態では、以下のファイル・ディレクトリを削除するような設定になっています。

(Windows系ゴミファイルも標準で追加しています。。)

このままで良ければ5番へGO。

Thumbs.db

desktop.ini

.DS_Store

__MACOSX

.AppleDouble

._*

削除対象ファイル・ディレクトリの確認方法は、ターミナル(コンソール・コマンドプロンプト)から、

./dtf.py config

(python dtf.py config)

とすると、

##### pattern

[‘Thumbs.db’, ‘desktop.ini’, ‘.DS_Store’, ‘__MACOSX’, ‘.AppleDouble’, ‘._*’]

#####

こんな感じで表示されます。

3.削除対象ファイル・ディレクトリを追加する

Adobe系ゴミファイル(_notesとか.BridgeSortとか.BridgeLabelsAndRatingsとか)も追加したいな、といった場合は、以下のコマンドで追加出来ます。

例:_notesを追加したい

./dtf.py add _notes

(python dtf.py add _notes)

とすると、

##### pattern

[‘Thumbs.db’, ‘desktop.ini’, ‘.DS_Store’, ‘__MACOSX’, ‘.AppleDouble’, ‘._*’, ‘_notes’]

#####

こんな感じで追加されます。

4.追加済みの削除対象ファイル・ディレクトリを削除する

やっぱり_notesは残しておこう、なんていう時は、以下のコマンドで削除出来ます。

./dtf.py del _notes

(python dtf.py del _notes)

とすると、

##### pattern

[‘Thumbs.db’, ‘desktop.ini’, ‘.DS_Store’, ‘__MACOSX’, ‘.AppleDouble’, ‘._*’]

#####

こんな感じで削除されます。

5.削除対象ファイルを確認する

いきなり削除実行して、予期せぬファイルが削除されてしまうのは怖いですので、確認しましょう。

./dtf.py show

(python dtf.py show)

すると、

delete: /hoge/hoge/hoge/.DS_Store

delete: /hoge/hoge/hoge/fuga/.Thumbs.db

といった感じで削除ファイルが一覧表示されます。

6.削除対象ファイルを一括削除する

実行は以下のコマンド・・・というか、引数なしで実行すると一括削除が開始します。

./dtf.py

(python dtf.py)


macなどの場合、cronに仕込んでおいて夜間に実行しておけば、まあそんなに文句を言われる事も減るのではないでしょうか??

ちなみにwindowsの場合、.pyファイルがpythonに関連付いていれば、そのままダブルクリックで一括削除の実行が出来ます。