Wie kann ich eine Datei mit der Standardanwendung von der Kommandozeile aus öffnen?

179

Wenn Sie in Nautilus auf eine Datei doppelklicken, wird diese mit der Standardanwendung geöffnet, die der Dateierweiterung zugeordnet ist. Beispielsweise werden HTML-Dateien in einem Webbrowser und PDF-Dateien in Document Viewer geöffnet. Gibt es eine Möglichkeit, dasselbe Verhalten über die Befehlszeile zu reproduzieren open path/filename? Ich frage, weil ich mein Dateisystem von der Kommandozeile aus durchsuchen möchte, mich aber manchmal nicht mehr an die App erinnere. öffnet was.

Olivier Lalonde
quelle
Es gibt eine ähnliche Frage zum Starten des Standardbrowsers über die Befehlszeile: askubuntu.com/questions/8252/…
kounryusui
Das ist in der Tat eine brillante Frage! In fast 4 Jahren meines bashLebens hatte ich nicht darüber nachgedacht: P
John Strood

Antworten:

233

Ich denke, das xdg-openist der Befehl, den Sie suchen.

NAME
       xdg-open - opens a file or URL in the user's preferred application

SYNOPSIS
       xdg-open {file | URL}

       xdg-open {--help | --manual | --version}

DESCRIPTION
       xdg-open opens a file or URL in the user's preferred application. If a
       URL is provided the URL will be opened in the user's preferred web
       browser. If a file is provided the file will be opened in the preferred
       application for files of that type. xdg-open supports file, ftp, http
       and https URLs.

z.B: xdg-open index.php

Dadurch wird index.php in gedit geöffnet (wenn Sie gnome verwenden).

Wenn Sie eine URL im Browser öffnen möchten

xdg-open http://google.com

Dadurch wird google.com in Ihrem Standardbrowser geöffnet.


xdg-openSkript ist ein Wrapper - es wird das Werkzeug der Desktop - Umgebung verwenden ( gio open, gvfs-open, kde-open, gnome-open, dde-open, exo-open, und eine Vielzahl von anderen solchen Werkzeugen). Es ist ebenfalls standardmäßig installiert und funktioniert sehr wahrscheinlich mit früheren, aktuellen und zukünftigen Versionen (auf der anderen Seite gvfs-openund gnome-openveraltet und möglicherweise in zukünftigen Versionen nicht mehr verfügbar).

aneeshep
quelle
2
Auf Gnome: gnome-openund auf KDE: kde-openfunktioniert.
Farahmand
xde-openarbeitete auch an xfce.
Sieben
5
Eine einfache Möglichkeit, diesen Befehl zu verkürzen, ist die Verwendung eines Alias. alias o='xdg-open'. Fügen Sie dies in Ihre .bash_aliasesDatei ein, damit der Alias ​​jedes Mal beim Start geladen wird. nano ~/.bash_aliasesund dann innen nanomit einfügen CTRL+SHIFT+V.
anon58192932
46

xdg-open und gnome-open

xdg-open ist der universellste Weg (arbeite auch unter KDE)

Shellholic
quelle
15

Wenn du möchtest:

  • Erstelle einen Alias ​​für diesen Befehl (zB open)
  • Ausgabe des Befehls ausblenden
  • Verwenden Sie dieses Terminal anschließend weiter

Sie können diese .bashrc-Funktion verwenden :

function open () {
  xdg-open "$@">/dev/null 2>&1
}
Jesse Knight
quelle