Standard-Applikation für Dateitypen per Komandozeile festlegen
Ich wolle über die Shell ein PDF mit "open" öffnen. Dann öffnete sich GIMP. WTF!! Daher diese kleine Anleitung: So kann die default Applikation per CLI festgelegt werden.
Kurz und knapp, so kann mit mimeopen
die Standard-Applikation festgelegt werden:
$ mimeopen -d Datei.pdf Please choose a default application for files of type application/pdf 1) Document Viewer (org.gnome.Evince) 2) GNU Image Manipulation Program (gimp) 3) Google Chrome (google-chrome) 4) LibreOffice Draw (libreoffice-draw) 5) Other... use application # 1 Opening "Datei.pdf" with Document Viewer (application/pdf)
Der Schalter -d
besagt, dass der default gesetzt werden soll.
Wer mimeopen dauerhaft anstatt open verwenden möchte, kann sich eine kleine Funktion in der .bashrc
hinterlegen:
function open() { mimeopen "$*" > /dev/null 2>&1; }
Falls interessant, hier noch Befehle um den MIME-Type zu bestimmen und die default application für ein MIME-Type zu setzen.
Befehl um den MIME-Type einer Datei anzeigen zu lassen:
$ xdg-mime query filetype Datei.pdf application/pdf
Befehl um die Standardanwendung eines MIME-Type anzugeigen:
$ xdg-mime query default application/pdf org.gnome.Evince.desktop
Das ganze lässt sich natrülich auch kombinieren:
$ xdg-mime query default "$(xdg-mime query filetype Datei.pdf)" org.gnome.Evince.desktop