我知道有些文件/etc/gnome/defaults.list
存储了 mime 关联,并且其格式应该可以编辑它们。
但我正在寻找一种至少可以处理以下问题之一的方法
- 该文件的格式可以合理解析。尽管如此,使用某人制作并希望经过测试的 API 将节省一些时间和解决错误的问题
- 让 API 根据操作系统版本、操作系统等了解该文件的位置会很棒。即使因“不支持此功能”而崩溃也比脚本编辑不再使用的内容更可取
我想完全自动化我的 Ubuntu 安装 - 设置文件关联以更正一个旨在成为其中的一部分。
即使是自动/半自动(如文档)方式来查找存储文件关联的位置也会受到欢迎。
如何全局更改文件关联?提及/usr/share/gnome/applications/defaults.list
,/usr/share/applications/defaults.list
另/usr/share/applications/mimeapps.list
请参阅我应该为默认应用程序修改哪个 default.list 以及两者之间有什么区别?(所以我宁愿至少自动定位文件)
xdg-mime(1) 可能是您正在寻找的。
此命令的手册页链接到位于https://www.freedesktop.org/wiki/Specifications/shared-mime-info-spec/的 MIME 数据库规范,以及位于http://www 的 MIME 应用程序关联规范。 freedesktop.org/wiki/Specifications/mime-apps-spec/
以下在某些情况下有效,但不是全部:
查看 mimetype:
file --mime-type -b sudolightburn.sh
查看当前关联:
xdg-mime query default text/plain
改变关联:
xdg-mime default codium.desktop text/plain
如果有人感兴趣,我有一个 ansible 角色,可以使用它来设置健全的默认程序:https ://github.com/matkoniecz/recovery-with-ansible/tree/master/roles/set_default_programs_for_file_types