Biorąc pod uwagę xdg-open i rozszerzenie, czy istnieje sposób na uzyskanie aplikacji, dla której xdg-open jest ustawiony dla tego konkretnego rozszerzenia?
Na przykład podany xdg-openi .jpgwynik to eog.
Biorąc pod uwagę xdg-open i rozszerzenie, czy istnieje sposób na uzyskanie aplikacji, dla której xdg-open jest ustawiony dla tego konkretnego rozszerzenia?
Na przykład podany xdg-openi .jpgwynik to eog.
Odpowiedzi:
AFAIK wybór akcji opiera się na typie pliku, a nie jego rozszerzeniu.
Przynajmniej w Ubuntu powinieneś być w stanie użyć queryakcji, xdg-mimeaby wyświetlić domyślną aplikację dla określonego typu mimetycznego
$ xdg-mime query default image/jpeg
eog.desktop
Możesz sprawdzić typ mimet dla konkretnego pliku, używając xdg-mime query filetypenp
$ xdg-mime query filetype kqDRdnW.jpg
image/jpeg
lub za pomocą filepolecenia npfile --mime-type <file>
Zobacz man xdg-mimedalsze informacje na temat użytkowania.
xdg-mime query filetype <file_you_want_the_mimetype_of>
xdg-mime query defaultnie zawsze działa, jeśli xdg-openwywołuje narzędzie bazowe (np. pcmanfm); przykład użyty w odpowiedzi nic nie zwraca w moim systemie LXDE.
var="xdg-mime query default image/jpeg" && $(${var%.desktop})
Aby zapytać o typ MIME używany przez istniejący plik przy użyciu xdg-utils, działa on jako:
$ xdg-mime query filetype yourfile.xxx
Możesz także ustawić nową wartość domyślną, na przykład zmienić skojarzony wpis pulpitu, ustawiając Thunar - nowoczesny menedżer plików dla środowiska Xfce Desktop - jako domyślną przeglądarkę plików, którą powinieneś wprowadzić:
$ xdg-mime default Thunar.desktop inode/directory
Lub na przykład, aby ustawić domyślną aplikację dla http(s)://protokołów internetowych, możesz użyć:
$ xdg-mime default midori.desktop x-scheme-handler/http
OR
$ xdg-mime default midori.desktop x-scheme-handler/https
rpmsystemów opartych; jest częścią standardowego pulpitu i działa na Debianie (na przykład). Niestety w ten sposób można ustawić wartość domyślną; nie mówi, jak znaleźć ustawioną wartość. I xdg-mime query defaultnie zawsze zgłasza, co zrobi, jeśli wywoła xdg-openpodstawowy program komputerowy (np. pcmanfmNa LXDE).