created: 2019-09-12T03:29:58.000Z

macosでデフォルトで開くアプリをコマンドライン(duti)で変更する

macosでは各拡張子ごとにデフォルトで開くアプリが決まっている

Finderから変更はできるが、扱う拡張子はけっこうたくさんあるのでいちいち変更するのがとても面倒なのでスクリプト化できるcliで変更したい

duti

duti を使えばコマンドラインからデフォルトアプリが変更できる

install

brew で入る

$ brew install duti
...
$ duti -h
usage: duti [ -hvV ] [ -d uti ] [ -l uti ] [ settings_path ]
usage: duti -s bundle_id { uti | url_scheme } [ role ]
usage: duti -x extension

表示

-x オプションと拡張子で、いまデフォルトになにが設定されているか確認できる

$ duti -x .md
Xcode
/Applications/Xcode.app
com.apple.dt.Xcode

変更

-s オプションと拡張子,アプリURIで、デフォルトアプリを設定できる

$ duti -s com.microsoft.VSCode .md all
$ duti -x .md  # 確認
Visual Studio Code
/Applications/Visual Studio Code.app
com.microsoft.VSCode
Efficient Linuxコマンドライン ―開発と自分に磨きをかけるLinuxのテクノロジー
[ad] Efficient Linuxコマンドライン ―開発と自分に磨きをかけるLinuxのテクノロジー
Daniel J. Barrett, 大嶋 真一 (単行本(ソフトカバー))