Desktop-Environment
xdg-open 是如何工作的
根據手冊頁,
xdg-open
將使用使用者配置的應用程序打開一個文件。但是該應用程序實際上是如何確定的呢?我看不到與 關聯的配置文件xdg-utils
,那麼我的設置儲存在哪里以及如何修改它們?看到一個簡單的 PNG 文件如何使用 Wine 打開 Internet Explorer,我需要更改這些設置。
查看
xdg-open
文件的內容,您會注意到它是一個簡單的 shell 腳本。它的主要任務是辨識正在使用的桌面環境,然後將其用於將任務委託給特定工具:
- KDE委託給
kde-open
或kfmclient
- Gnome代表
gvfs-open
或gnome-open
- 將代表與
gvfs-open
或mate-open
- XFCE代表
exo-open
- LXDE委託給
pcmanfm
,對於大多數 URL 回退到“通用”- 啟蒙運動代表
enlightenment_open
- 其他一切都被稱為“通用”,腳本會嘗試自己的運氣
所以核心資訊是:在大多數情況下,這些代表中的一個會做實際的工作,所以你應該檢查它們是如何配置的。
例如,我正在執行 XFCE,因此
xdg-open
呼叫exo-open
使用通過 XFCE 設置使用者界面可用的 XFCE 設置並儲存在~/.local/share/applications/mimeapps.list
.有關正在使用的配置文件的詳細資訊,
strace -e file
可能很有用。如果您處於“通用”情況並想看看xdg-open
它本身做了什麼,您可以嘗試sh -x
which xdg-openfile.name
.