Подивіться на вміст xdg-openфайлу, і ви помітите, що це простий скрипт оболонки. Основним її завданням є визначення використовуваного робочого середовища, яке потім буде використано для делегування завдання певному інструменту:
- KDE делегує до
kde-openабоkfmclient
- Делегати Gnome до
gvfs-openабоgnome-open
- Mate делегує до
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-open` file.name.