永久修改mac系统.txt文件默认打开程序需三步:1.右键新建文本文稿→command+i→“打开方式”选目标编辑器并点“全部更改…”;2.为使open -t生效,需用ln -sf创建符号链接或修改launchservices数据库并刷新;3.验证时双击.txt及运行open -t应启动新编辑器。

Mac系统默认用“文本编辑”打开.txt文件,但很多人想换成Sublime Text、VSCode或Typora等更顺手的编辑器,又不知道从哪改起——改错位置会导致双击文件没反应,或每次都要手动选“打开方式”。
永久修改.txt文件的默认打开程序
这一步直接作用于系统级文件关联,改完后双击任意.txt文件都会自动用你指定的编辑器打开,无需每次右键选择。
1、在访达中任意位置新建一个测试文件:按 Command + N 打开新窗口 → 进入桌面或文稿文件夹 → 右键空白处 → 选择“新建文稿”→“文本文稿”,生成一个 Untitled.txt。
2、选中这个 Untitled.txt 文件,按 Command + I 打开“显示简介”面板。
3、在“打开方式”下拉菜单中,选择你想设为默认的编辑器(如 Sublime Text、Visual Studio Code、Typora)。若列表里没有,点击下拉箭头最底部的“其他…” → 勾选【始终以此应用打开】 → 在弹出窗口中找到对应App并选中。
4、点击右下角“全部更改…”按钮 → 在确认弹窗中点“继续”。这步不可跳过,否则只对当前文件生效。
让终端里的 open -t 命令也走新编辑器
macOS命令行中 open -t file.txt 默认调用系统“文本编辑”,很多人装了Sublime或VSCode后发现这条命令还是打开老编辑器——因为 -t 绑定的是“Text Editor”角色,不是某个具体App。
方法一:用 ln -s 创建符号链接(推荐给 Sublime Text 用户)
1、先确认 Sublime Text 的命令行工具是否已安装:打开 Sublime Text → 菜单栏点击 Sublime Text → Command Palette → 输入 Install Shell Commands 并回车执行。
2、终端中运行:ln -sf /Applications/Sublime\ Text.app/Contents/SharedSupport/bin/subl /usr/local/bin/edit
3、之后用 edit filename.txt 就能唤起 Sublime;如需替换 open -t 行为,还需下一步。
方法二:修改 LaunchServices 数据库(适用于 VSCode、Typora 等未自带命令行工具的编辑器)
1、终端执行:defaults write com.apple.LaunchServices/com.apple.launchservices.secure LSHandlers -array-add '{LSHandlerContentType=public.plain-text;LSHandlerRoleAll=com.microsoft.VSCode;}'
2、把上面命令里的 com.microsoft.VSCode 换成你编辑器的真实Bundle ID。查ID方法:右键App → “显示简介” → 复制“通用”栏里的“代号签名”字段值;Typora 是 abnerworks.Typora,Sublime Text 是 com.sublimetext.4(版本不同ID可能含3或4)。
3、执行 lsregister -f /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/LaunchServices.framework/Versions/A/Support/lsregister 刷新注册表(路径必须完整,少一个字符都不生效)。
验证是否成功
1、找一个已存在的 .txt 文件,双击它——应直接启动你设置的新编辑器,且光标聚焦在文档内。
2、终端中运行:open -t ~/Desktop/test.txt —— 若仍打开“文本编辑”,说明第二步没生效,重点检查Bundle ID是否拼错、lsregister 命令是否完整执行。
3、重启访达:按 Option + Command + Esc → 选中“访达” → “重新开启”,避免缓存干扰。











