Jawaban:
AFAIK pilihan tindakan didasarkan pada mimetype file daripada ekstensi.
Setidaknya di Ubuntu, Anda harus dapat menggunakan query
tindakan xdg-mime
untuk menampilkan aplikasi default untuk mimetype tertentu
$ xdg-mime query default image/jpeg
eog.desktop
Anda dapat memeriksa mimetype untuk file tertentu menggunakan xdg-mime query filetype
mis
$ xdg-mime query filetype kqDRdnW.jpg
image/jpeg
atau menggunakan file
perintah misfile --mime-type <file>
Lihat man xdg-mime
untuk informasi penggunaan lebih lanjut.
xdg-mime query filetype <file_you_want_the_mimetype_of>
xdg-mime query default
tidak selalu berhasil jika xdg-open
hanya memanggil alat yang mendasarinya (misalnya pcmanfm
); contoh yang Anda gunakan dalam jawaban Anda tidak mengembalikan apa pun pada sistem LXDE saya.
var="xdg-mime query default image/jpeg" && $(${var%.desktop})
Untuk meminta tipe mime yang digunakan oleh file yang ada dengan menggunakan xdg-utils
, itu berfungsi sebagai:
$ xdg-mime query filetype yourfile.xxx
Anda juga dapat menetapkan default baru, misalnya untuk mengubah entri desktop terkait dengan menetapkan Thunar - manajer file modern untuk Lingkungan Desktop Xfce - sebagai browser file default yang harus Anda masukkan:
$ xdg-mime default Thunar.desktop inode/directory
Atau misalnya untuk mengatur aplikasi default untuk http(s)://
protokol internet, Anda dapat menggunakan:
$ xdg-mime default midori.desktop x-scheme-handler/http
OR
$ xdg-mime default midori.desktop x-scheme-handler/https
rpm
sistem berbasis; itu adalah bagian dari desktop standar dan berfungsi di Debian (misalnya). Sayangnya ini adalah cara menetapkan nilai default; itu tidak mengatakan bagaimana menemukan nilai yang ditetapkan. Dan xdg-mime query default
tidak selalu melaporkan apa yang akan dilakukan jika xdg-open
memanggil program desktop yang mendasarinya (misalnya pcmanfm
pada LXDE).