Answers:
您需要更改text/plainmime类型或public.plain-textUTI 的编辑器。常规的“ 获取信息”对话框会更改文件扩展名的关联,而这些文件没有此关联。
获取RCDefaultApp并安装它。
打开系统偏好设置»默认应用程序»应用程序。选择所需的默认编辑器,然后在应用程序的受支持类型列表中查找以上任一内容。

选择条目,然后单击设置为默认。你完成了。从Finder打开并在命令行中open都将打开新的默认编辑器。
这也将更改所有.txt文件等。我认为这是无法避免的,因为OS X认为这些文件和无扩展名的文件都是public.plain-text/ text/plain。
要在没有RCDefaultApp的情况下执行此操作,请编辑Edit ~/Library/Preferences/com.apple.LaunchServices.plist。
在下方添加一个条目LSHandlers,其中包含UTI(LSHandlerContentType例如键public.plain-text)和应用程序包标识符(LSHandlerRoleAll例如com.macromates.textmate)。
在“ 属性列表编辑器”中看起来像这样:

defaults write代替下载第三方软件吗?
text/plain和之间有什么区别public.plain-text?除了@Mark的示例之外,还有其他原因可以选择一个吗?
您还可以运行plutil -convert xml1 ~/Library/Preferences/com.apple.LaunchServices.plist并添加如下内容:
<dict>
<key>LSHandlerContentType</key>
<string>public.plain-text</string>
<key>LSHandlerRoleAll</key>
<string>com.macromates.textmate</string>
</dict>
<dict>
<key>LSHandlerContentType</key>
<string>public.unix-executable</string>
<key>LSHandlerRoleAll</key>
<string>com.macromates.textmate</string>
</dict>
您可以通过重新启动或重建Launch Services数据库来应用更改。仅注销并重新登录是不够的。
或将其添加到duti配置文件中:
com.macromates.textmate public.plain-text all
com.macromates.textmate public.unix-executable all
public.plain-text还包括带有.txt或.text扩展名的文件。我不知道任何方法来更改具有任意扩展名的文件的默认应用程序。
public.unix-exexutable包括不带文件扩展名的可执行脚本。如果尝试从Finder更改默认应用程序,则将出现如下错误:
操作无法完成。
发生意外错误(错误代码-50)。