Étant donné xdg-open et une extension, existe-t-il un moyen d'obtenir l'application à laquelle xdg-open est définie pour cette extension particulière?
Par exemple donné xdg-open
et .jpg
le résultat est eog
.
Étant donné xdg-open et une extension, existe-t-il un moyen d'obtenir l'application à laquelle xdg-open est définie pour cette extension particulière?
Par exemple donné xdg-open
et .jpg
le résultat est eog
.
Réponses:
AFAIK le choix de l'action est basé sur le type de mime du fichier plutôt que sur son extension.
Au moins sur Ubuntu, vous devriez pouvoir utiliser l' query
action de xdg-mime
pour afficher l'application par défaut pour un type de mime spécifique
$ xdg-mime query default image/jpeg
eog.desktop
Vous pouvez vérifier le type MIME pour un fichier particulier en utilisant xdg-mime query filetype
par exemple
$ xdg-mime query filetype kqDRdnW.jpg
image/jpeg
ou en utilisant la file
commande par exemplefile --mime-type <file>
Voir man xdg-mime
pour plus d'informations sur l'utilisation.
xdg-mime query filetype <file_you_want_the_mimetype_of>
xdg-mime query default
ne fonctionne pas toujours si on xdg-open
appelle simplement un outil sous-jacent (par exemple pcmanfm
); l'exemple que vous avez utilisé dans votre réponse ne renvoie rien sur mon système LXDE.
var="xdg-mime query default image/jpeg" && $(${var%.desktop})
Pour interroger le type MIME utilisé par un fichier existant à l'aide de xdg-utils
, cela fonctionne comme:
$ xdg-mime query filetype yourfile.xxx
Vous pouvez également définir une nouvelle valeur par défaut, par exemple pour modifier une entrée de bureau associée en définissant Thunar - un gestionnaire de fichiers moderne pour l'environnement de bureau Xfce - comme navigateur de fichiers par défaut, vous devez entrer:
$ xdg-mime default Thunar.desktop inode/directory
Ou par exemple pour définir l'application par défaut pour les http(s)://
protocoles Internet, vous pouvez utiliser:
$ xdg-mime default midori.desktop x-scheme-handler/http
OR
$ xdg-mime default midori.desktop x-scheme-handler/https
rpm
systèmes basés; cela fait partie du bureau standard et fonctionne sur Debian (par exemple). Malheureusement, voici comment définir une valeur par défaut; il ne dit pas comment trouver la valeur définie. Et xdg-mime query default
ne rapporte pas toujours ce qu'il fera s'il xdg-open
appelle un programme de bureau sous-jacent (par exemple pcmanfm
sur LXDE).