查找某个扩展的默认应用程序

sjs*_*sam 14 xdg-open

鉴于 xdg-open 和一个扩展,有没有办法获取 xdg-open 为该特定扩展设置的应用程序?

例如给出xdg-open.jpg结果是eog

ste*_*ver 15

AFAIK 操作的选择基于文件的 mimetype 而不是其扩展名。

至少在 Ubuntu 上,您应该能够使用 的query操作xdg-mime来显示特定 mimetype 的默认应用程序

$ xdg-mime query default image/jpeg
eog.desktop
Run Code Online (Sandbox Code Playgroud)

您可以使用xdg-mime query filetype例如检查特定文件的 mimetype

$ xdg-mime query filetype kqDRdnW.jpg
image/jpeg
Run Code Online (Sandbox Code Playgroud)

或使用file命令例如file --mime-type <file>

有关man xdg-mime更多使用信息,请参阅。


小智 5

通过 using查询现有文件使用的 mime 类型xdg-utils,它的工作方式如下:

$ xdg-mime query filetype yourfile.xxx
Run Code Online (Sandbox Code Playgroud)

您还可以设置新的默认值,例如通过将ThunarXfce 桌面环境的现代文件管理器)设置为您应该输入的默认文件浏览器来更改关联的桌面条目:

$ xdg-mime default Thunar.desktop inode/directory
Run Code Online (Sandbox Code Playgroud)

或者,例如设置http(s)://Internet 协议的默认应用程序,您可以使用:

$ xdg-mime default midori.desktop x-scheme-handler/http

OR

$ xdg-mime default midori.desktop x-scheme-handler/https
Run Code Online (Sandbox Code Playgroud)