使用标准接口以编程方式修改文件关联(使用 mimetype)

red*_*ity 6 default lubuntu automation file-association 18.04

我知道有一些文件/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 以及两者之间有什么区别?(所以我更喜欢自动化至少定位文件)

red*_*ity 0

以下在某些情况下有效,但并非全部:

查看 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