Trova l'applicazione predefinita per una determinata estensione


12

Dato xdg-open e un'estensione, c'è un modo per ottenere l'applicazione su cui xdg-open è impostato per quella particolare estensione?

Ad esempio dato xdg-opene .jpgil risultato è eog.


1
Quale sistema operativo stai usando?
heemayl

Questo è Ubuntu Trusty.
sjsam,

Risposte:


13

AFAIK la scelta dell'azione si basa sul mimetype del file piuttosto che sulla sua estensione.

Almeno su Ubuntu, dovresti essere in grado di utilizzare l' queryazione di xdg-mimeper mostrare l'applicazione predefinita per un mimetype specifico

$ xdg-mime query default image/jpeg
eog.desktop

Puoi controllare il mimetype per un determinato file usando xdg-mime query filetypead es

$ xdg-mime query filetype kqDRdnW.jpg
image/jpeg

o usando il filecomando esfile --mime-type <file>

Vedere man xdg-mimeper ulteriori informazioni sull'utilizzo.


probabilmente vale la pena ricordare all'OP che il modo in cui ottieni il tipo mime per il jpeg del tipo di file èxdg-mime query filetype <file_you_want_the_mimetype_of>
the_velour_fog

@the_velour_fog buon punto - aggiunto
steeldriver

Sfortunatamente xdg-mime query defaultnon sempre funziona se xdg-openchiama semplicemente uno strumento sottostante (es. pcmanfm); l'esempio che hai usato nella tua risposta non restituisce nulla sul mio sistema LXDE.
Stephen Harris,

Grazie, vorrei andare qui prima opzione,var="xdg-mime query default image/jpeg" && $(${var%.desktop})
sjsam

5

Per eseguire una query sul tipo mime utilizzato da un file esistente utilizzando xdg-utils, funziona come:

$ xdg-mime query filetype yourfile.xxx

Puoi anche impostare un nuovo valore predefinito, ad esempio per modificare una voce del desktop associata impostando Thunar - un moderno gestore di file per Xfce Desktop Environment - come browser di file predefinito che dovresti inserire:

$ xdg-mime default Thunar.desktop inode/directory

O ad esempio per impostare l'applicazione predefinita per i http(s)://protocolli Internet, è possibile utilizzare:

$ xdg-mime default midori.desktop x-scheme-handler/http

OR

$ xdg-mime default midori.desktop x-scheme-handler/https

Questo non è limitato ai rpmsistemi basati; fa parte del desktop standard e funziona su Debian (per esempio). Purtroppo questo è come impostare un valore predefinito; non dice come trovare quale valore è impostato. E xdg-mime query defaultnon segnala sempre cosa farà se xdg-openchiama un programma desktop sottostante (ad es. pcmanfmSu LXDE).
Stephen Harris,

@StephenHarris Ho pensato che le opzioni potrebbero essere diverse. Grazie per avermelo detto.
FarazX,

Questa dovrebbe essere la risposta accettata.
navigaid
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.