Mac上永久更改文件类型默认应用有五种方法:一、通过“显示简介”面板批量设置;二、Option键右键选择“始终以此方式打开”;三、拖拽文件至应用图标绑定;四、用duti命令行工具指定;五、终端修改LaunchServices数据库绑定UTI。

如果您在Mac上双击某个文件时总是被错误的应用程序打开,说明该文件类型的默认关联已被设定为非预期程序。以下是永久更改特定文件类型默认应用的多种设置方法:
一、通过“显示简介”面板批量设置默认应用
此方法直接修改系统对特定扩展名的全局关联规则,所有同类型文件将统一使用指定程序打开,是一次设置、长期有效的标准操作。
1、在访达(Finder)中选中一个具有目标扩展名的文件(例如 test.pdf 或 image.jpg)。
2、按 Command + I 快捷键,打开该文件的“显示简介”窗口。
3、在“打开方式”区域点击右侧下拉箭头,从列表中选择您希望设为默认的应用程序(如 Preview、Adobe Acrobat 或 TextEdit)。
4、点击“打开方式”下方的“全部更改”按钮。
5、在弹出的确认对话框中点击“继续”,系统即完成对该扩展名所有文件的默认程序绑定。
二、使用 Option 键右键实现“始终以此方式打开”
该方式无需打开额外窗口,利用上下文菜单直接触发默认应用绑定,操作路径最短,适用于单个扩展名的即时设定。
1、在访达或桌面中找到任意一个目标文件(如 document.docx 或 notes.md)。
2、按住 Control 键并点击该文件(或直接右键),呼出上下文菜单。
3、将鼠标悬停于“打开方式”选项,展开可用应用程序列表。
4、在保持鼠标悬停的同时,按住 Option 键不放,此时菜单项自动变为灰色的“始终以此方式打开”。
5、松开 Option 键后,点击“始终以此方式打开”,随后从子菜单中选择目标应用程序(如 Microsoft Word 或 VS Code)。
三、使用拖拽法将文件直接绑定至目标应用图标
此方法绕过系统菜单逻辑,通过图形化拖放触发 LaunchServices 自动注册,对未出现在“打开方式”列表中的专业软件(如 Obsidian、Sublime Text、Typora)尤为有效。
1、确保目标应用已安装且图标可见(可在 Dock 或访达中定位)。
2、将目标文件(如 config.json 或 script.sh)直接拖拽至该应用图标上。
3、松开鼠标后,系统弹出提示:“是否使用此应用程序打开所有 .json 文件?”
4、点击 “使用”,系统立即建立扩展名与应用的默认绑定关系。
四、通过终端命令使用 duti 工具精确指定默认程序
duti 是专为 macOS 设计的命令行工具,支持按扩展名或 UTI 强制设定默认应用,适用于脚本化批量配置或图形界面失效场景。
1、若尚未安装 duti,先在终端中运行:brew install duti。
2、执行绑定命令,例如将所有 .log 文件设为由 Console.app 打开:duti -s com.apple.Console .log all。
3、替换命令中的 .log 为所需扩展名,com.apple.Console 为目标应用的 Bundle Identifier(可通过 osascript -e 'id of app "Console"' 查询)。
4、执行完毕后,无需重启,但部分应用可能需重新登录用户会话才能完全生效。
五、通过终端命令修改 LaunchServices 数据库绑定 UTI 类型
此方法绕过图形界面,直接写入 LaunchServices 数据库中的统一类型标识符(UTI)映射,适合高级用户对特定格式(如 public.plain-text 或 public.jpeg)实施强制指定。
1、打开“应用程序 → 实用工具 → 终端”。
2、输入以下命令以设定纯文本文件默认由 TextEdit 打开:defaults write com.apple.LaunchServices/com.apple.launchservices.secure LSHandlers -array-add '{LSHandlerContentType=public.plain-text;LSHandlerRoleAll=com.apple.TextEdit;}'。
3、替换命令中的 public.plain-text 为所需 UTI(例如 public.jpeg),并将 com.apple.TextEdit 替换为目标应用 Bundle ID。
4、执行完毕后,运行 killall Finder 刷新界面,或重启 Mac 使新绑定完全生效。










