Antworten:
sensible-browser
ist der Befehl, den Sie suchen.
sensible-browser
öffnet Opera stattdessen pf Standard Chrome. xdg-open
funktioniert wie erwartet.
sensible-browser
folgt nicht den im Unity-Control-Center konfigurierten Benutzereinstellungen. xdg-open
tut.
Bei Google habe ich die Antwort gefunden.
xdg-open öffnet eine Datei oder URL in der bevorzugten Anwendung des Benutzers. Wenn eine URL angegeben ist, wird die URL im bevorzugten Webbrowser des Benutzers geöffnet. Wenn eine Datei bereitgestellt wird, wird die Datei in der bevorzugten Anwendung für Dateien dieses Typs geöffnet. xdg-open unterstützt Datei-, FTP-, http- und https-URLs.
xdg-open ist Teil des Pakets xdg-utils und bereits auf Ubuntu 10.10 installiert.
Sie können auch verwenden:
x-www-browser http://some-url.org
Und es öffnet die URL im Standardbrowser.
Bei der Standardeinstellung von Ubuntu fällt nur der Befehl gnome-open ein.
gnome-open http://askubuntu.com
gnome-open
für fast alle Dateitypen, URIs und Verzeichnisse verwenden können. Es ist ein Befehl zu lernen, anstatt zu versuchen , über obskure Befehle wie zu erinnernsensible-browser
xdg-open
dasselbe tun - tatsächlich wird es je nach Desktop-Umgebung anrufen gnome-open
oder kde-open
oder was auch immer. Somit ist es portabler.
Ich habe ein bisschen rumgespielt. Es gibt ein Problem mit gnome-open
- der Standard-Webbrowser wird nur aufgerufen, wenn Sie eine URL angeben. Dies ist ein Problem, wenn Sie ein Symbol oder eine Verknüpfung einrichten möchten, mit der der standardmäßig eingestellte Browser immer gestartet wird. In anderen Fällen müssen Sie es möglicherweise als Parameter für einige Programme festlegen, für die eine Verknüpfung mit einem Webbrowser erforderlich ist und die nicht gut funktionieren gnome-open
(z acroread
. B.:) . Sie können dieses Problem beheben, indem Sie entweder eine x-www-browser
oder gnome-www-browser
mehrere Systemverknüpfungen verwenden, die Sie update-alternatives
einrichten können gnome-default-applications-properties
. Hierbei handelt es sich jedoch um systemweite Einstellungen, die nicht benutzerspezifisch sind (und die nicht mit den durch festgelegten Werten synchronisiert sind . All dies kann durch Öffnen der sensible-browser
ausführbaren Datei (welche) behoben werden ist eigentlich ein Skript):
sudo gedit $(which sensible-browser)
und dies am Anfang hinzufügen:
#!/bin/bash
BROWSER=$(gconftool -g /desktop/gnome/url-handlers/http/command)
export BROWSER="${BROWSER//"\"%s\""/}"
Dadurch wird sensible-browser
immer der vom Benutzer festgelegte Standard-Webbrowser gestartet. (Ich habe herausgefunden, dass gnome-default-applications-properties
sich einige gconf-Schlüssel je nach dem aktuell eingestellten Browser ändern. Der Standard-Browserwert kann von jedem dieser Schlüssel abgerufen werden. Deshalb habe ich /desktop/gnome/url-handlers/http/command
ihn zum Füllen der $BROWSER
Variablen verwendet (der Wert wird vom "%s"
Teil entfernt). .)
/usr/bin/sensible-browser
da diese Antwort empfohlen wird. Diese Änderung wird bei einem System-Upgrade überschrieben.
Nur damit Sie es nützlich finden. Ein Fallback-Ansatz und ein Liner.
URL="https://www.url.com/some"; xdg-open $URL || sensible-browser $URL || x-www-browser $URL || gnome-open $URL
Gute Lektüre für diejenigen, die mit den logischen Operatoren nicht vertraut sind https://www.howtogeek.com/269509/how-to-run-two-or-more-terminal-commands-at-once-in-linux/ .
; => laufe in allen fällen,
|| => Ausführen, wenn der vorherige Befehl fehlgeschlagen ist (oder)
&& => nur ausführen, wenn der vorherige Befehl erfolgreich ausgeführt wurde
und
var = someval -> setze eine Variable
$ var -> ruft die Variable auf
sensible-utils
Paket und dem System der Alternativen, die in/etc/alternatives
und durch modifiziert wurdenupdate-alternatives
?