👋
MacでCUIを使ってファイル拡張子とアプリを関連付けるを管理する
はじめに
Mac上でjsonファイルをクリックしたらxcodeが起動してしまった。
全PC共通の関連付け設定を管理したい。
duti のインストール
brew install duti
duti の基本的な構文
dutiの基本的な使用方法は次の通りです
duti -s <bundle_id> <file_extension> <role>
-
<bundle_id>
: アプリケーションのバンドルID -
<file_extension>
: 関連付けたいファイル拡張子(例:.txt) -
<role>
: all(デフォルト), viewer, editor, shellなど
バンドルIDの確認
mdls コマンドで.APPのファイルパスを指定することでバンドルIDを調べることができます。
% mdls -name kMDItemCFBundleIdentifier /Applications/Visual\ Studio\ Code.app
kMDItemCFBundleIdentifier = "com.microsoft.VSCode"
拡張子 txt を VSCodeに関連付ける
現在の紐づけ状況を確認
duti -x .csv
Numbers.app
/Applications/Numbers.app
com.apple.iWork.Numbers
紐づけを実施
csvファイルにVSCodeを紐づけれる例
duti -s 'com.microsoft.VSCode' .csv all
紐づけをされたか確認
duti -x .csv
Visual Studio Code.app
/Applications/Visual Studio Code.app
com.microsoft.VSCode
個人のdotfiles で設定を管理
#!/bin/bash
duti -s 'com.microsoft.VSCode' .tsv all
duti -s 'com.microsoft.VSCode' .csv all
duti -s 'com.microsoft.VSCode' .json all
Tips
紐づけの解除
duti -s '' .docx none
Discussion