Answers:
AFAIK操作的选择基于文件的mimetype而不是其扩展名。
至少在Ubuntu上,您应该能够使用query
动作xdg-mime
来显示特定mimetype的默认应用程序
$ xdg-mime query default image/jpeg
eog.desktop
您可以检查MIME类型使用特定的文件xdg-mime query filetype
如
$ xdg-mime query filetype kqDRdnW.jpg
image/jpeg
或使用file
命令,例如file --mime-type <file>
请参阅man xdg-mime
以获取更多使用信息。
xdg-mime query filetype <file_you_want_the_mimetype_of>
xdg-mime query default
,xdg-open
仅调用基础工具(例如pcmanfm
)并不总是有效;您在答案中使用的示例在我的LXDE系统上不返回任何内容。
var="xdg-mime query default image/jpeg" && $(${var%.desktop})
要使用来查询现有文件使用的mime类型xdg-utils
,它的工作方式如下:
$ xdg-mime query filetype yourfile.xxx
您还可以设置一个新的默认值,例如,通过将Thunar(Xfce桌面环境的现代文件管理器)设置为默认文件浏览器来更改关联的桌面条目,您应该输入:
$ xdg-mime default Thunar.desktop inode/directory
或者例如,为http(s)://
互联网协议设置默认应用程序,可以使用:
$ xdg-mime default midori.desktop x-scheme-handler/http
OR
$ xdg-mime default midori.desktop x-scheme-handler/https
rpm
基于系统的系统;它是标准桌面的一部分,并且可以在Debian上运行(例如)。不幸的是,这是设置默认值的方法。它没有说如何找到设置的值。并且xdg-mime query default
并不总是报告如果xdg-open
调用底层桌面程序(例如,pcmanfm
在LXDE上)将如何处理。