pre*_*yle 10 linux dolphin-file-manager xdg redhat-enterprise-linux
当我使用 xdg-open 时,目录一直在 Firefox 中打开。我不想要这个。
我做了:
xdg-mime default dolphin.desktop application/x-directory
和
xdg-mime default dolphin.desktop inode/directory
然而,当我尝试
xdg-open /local
我仍然得到一个 Firefox 窗口。为什么是这样?我什至仔细检查过
xdg-mime query default inode/directory
和
xdg-mime query default inode/directory
这两个命令都会导致
dolphin.desktop
我不知道它是否会有所不同如果我使用 ssh 来控制我所指的机器(我不是在我给出这些命令的机器上工作,我已经使用 ssh 通过终端来控制它我现在的机器)。
我所在的机器上的默认目录程序是文件浏览器,而不是 dolphin 或 Firefox,所以它似乎无关紧要。
在我的情况下,更改不起作用:
$ xdg-mime default evince.desktop application/pdf
Run Code Online (Sandbox Code Playgroud)
使用调试运行将显示查询的文件:
$ XDG_UTILS_DEBUG_LEVEL=2 xdg-mime query default application/pdf
Checking /usr/local/share//applications/defaults.list and /usr/local/share//applications/mimeinfo.cache
Checking /usr/local/share//applications/defaults.list and /usr/local/share//applications/mimeinfo.cache
Checking /usr/share//applications/defaults.list and /usr/share//applications/mimeinfo.cache
libreoffice-draw.desktop
Run Code Online (Sandbox Code Playgroud)
查看最后一个文件(找到匹配项的位置)给了我一个提示:
$ grep application/pdf /usr/share/applications/mimeinfo.cache
application/pdf=libreoffice-draw.desktop;gimp.desktop;org.gnome.Evince.desktop;inkscape.desktop;
Run Code Online (Sandbox Code Playgroud)
它不再被称为evince.desktop,现在是org.gnome.Evince.desktop!
再一次,现在使用新名称:
$ xdg-mime default org.gnome.Evince.desktop application/pdf
$ XDG_UTILS_DEBUG_LEVEL=2 xdg-mime query default application/pdf
Checking ~/.config/mimeapps.list
org.gnome.Evince.desktop
Run Code Online (Sandbox Code Playgroud)
好多了!