1
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Macでファイルの関連付けを設定する方法(duti コマンド)

Last updated at Posted at 2025-02-03

duti とは?

duti(Developer's Default Uniform Type Identifier) は、Mac のデフォルトアプリケーションをターミナルから設定するためのコマンドラインツールです。特定の拡張子に対して、開くデフォルトアプリケーションを設定できます。

インストール

brew install duti

拡張子の関連付けを調べる

特定の拡張子がどの UTI(Uniform Type Identifier)に関連付けられているかを調べるには、以下のコマンドを使用します。

duti -x .json

このコマンドを実行すると、.json ファイルを開くデフォルトのアプリケーションのバンドルIDが表示されます。

ドットファイル(例: .gitignore)の UTI を調べる

mdls -name kMDItemContentType .gitignore

このコマンドを実行すると、.gitignore ファイルのUTI(Uniform Type Identifier)が表示されます。

ファイルの関連付けを変更する

特定のファイルを Sublime Text 4 で開くように設定するには、以下のコマンドを使用します。
ファイルを単一で開く場合は、Sublime Text が便利でお気に入りです。

duti -s com.sublimetext.4 public.plain-text all
duti -s com.sublimetext.4 public.data all

拡張子を指定して設定する場合:

duti -s com.sublimetext.4 .css all &&
duti -s com.sublimetext.4 .csv all &&
duti -s com.sublimetext.4 .d.ts all &&
duti -s com.sublimetext.4 .env all &&
duti -s com.sublimetext.4 .ini all &&
duti -s com.sublimetext.4 .js all &&
duti -s com.sublimetext.4 .json all &&
duti -s com.sublimetext.4 .jsonc all &&
duti -s com.sublimetext.4 .lock all &&
duti -s com.sublimetext.4 .map all &&
duti -s com.sublimetext.4 .md all &&
duti -s com.sublimetext.4 .mjs all &&
duti -s com.sublimetext.4 .php all &&
duti -s com.sublimetext.4 .scss all &&
duti -s com.sublimetext.4 .sql all &&
duti -s com.sublimetext.4 .test.js all &&
duti -s com.sublimetext.4 .test.ts all &&
duti -s com.sublimetext.4 .ts all &&
duti -s com.sublimetext.4 .tsx all &&
duti -s com.sublimetext.4 .txt all &&
duti -s com.sublimetext.4 .xml all &&
duti -s com.sublimetext.4 .yaml all

.html の関連付け設定が失敗する問題

以下のコマンドで .html を Sublime Text 4 に関連付けようとすると、エラーが発生することがあります。

duti -s com.sublimetext.4 .html all

エラーメッセージ:

failed to set com.sublimetext.4 as handler for public.html (error -54)

sudo を付けても解決しない場合、システムの保護機能によって public.html が特定のアプリケーション(通常は Safari や Chrome)に固定されている可能性があります。

回避策

.html ファイルを Sublime Text 4 で開く場合は、手動で Finder から設定することを検討してください。

  1. .html ファイルを右クリック
  2. 情報を見る (Get Info) を選択
  3. このアプリケーションで開く の項目を Sublime Text に変更
  4. すべてを変更 ボタンをクリック

これで .html ファイルを Sublime Text で開くように設定できます。

まとめ

  • duti -x .ext で拡張子の関連付けを調査
  • mdls -name kMDItemContentType ファイル名 で UTI を調査
  • duti -s <バンドルID> <UTI> all でファイルのデフォルトアプリケーションを設定
  • .html の関連付け変更は Finder から手動設定するのが安全

duti を活用すれば、ターミナルから効率的にファイルの関連付けを管理できます。

1
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?