[macOS Catalina] Hazel で大文字拡張子を小文字に自動変換

Mac でファイルを管理する際に、拡張子は小文字にしておきたい。大文字の拡張子と小文字の拡張子が混在していたら一覧したとき分かりにくいし、まれにアプリケーションによっては大文字拡張子だとうまくファイルを認識できないことがある。

特に外部のガジェットからファイルを取り込んだ際、拡張子が大文字であることが多い気がする。iOS の写真・動画も Mac に転送したら拡張子が大文字だし、私の使う IC レコーダー(Roland R-05)も大文字だ。

大量のファイルの拡張子をいちいち小文字に変更するのは大変だ。そこでこれまで Hazel というアプリケーションを使って自動的に小文字にしていた。

Noodlesoft – Noodlesoft – Simply Useful Software
https://www.noodlesoft.com/

Hazel で指定フォルダーに大文字の拡張子のファイルが追加されると自動的に小文字に変換していた。

しかし、macOS Catalina にアップデートして Hazel をインストールし直してから挙動がおかしい。ファイル名に .0 がランダムに挿入されたりする、拡張子も変に変更されてしまったりする。

これは Hazel も公式にバグを認めており、Mojave から Catalina へのアップデートは待つようにと Twitter で言っている(10/23 時点でベータ版で修正版を出している模様)。

Hazel (@Noodle_Hazel) | Twitter
https://twitter.com/Noodle_Hazel

そこで拡張子を大文字から小文字に変換するのを Hazel に任せるのではなく、Automator を使って変換することにした。

(1)Automator で Workflow を新規作成する。

(2)Library から Files & Folders > Rename Finder Items を右側のペインへドラッグ・アンド・ドロップする。リネームするので、ファイルのコピーを作成するかと聞かれるが Don’t Add をクリック。

(3)以下のように設定する。

・Change Case
・Extension only to lowercase

(4)Workflow を適当な場所に保存する。

(5)Hazel の Do the following to the matched file or folder を Run Automator workflow にし、4のファイルを指定する。

要するに拡張子の変更処理を Hazel に内部的に処理させるのではなく、workflow に渡すようにしたわけだ。

これで今まで通り指定フォルダーに入った大文字拡張子のファイルを小文字にできるようになった。

参考:
簡単!Macで大文字の拡張子を小文字に変換する方法
https://webledge-blog.com/mac-kakuchoshi/