Antworten:
sensible-browser ist der Befehl, den Sie suchen.
sensible-browseröffnet Opera stattdessen pf Standard Chrome. xdg-openfunktioniert wie erwartet.
sensible-browserfolgt nicht den im Unity-Control-Center konfigurierten Benutzereinstellungen. xdg-opentut.
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-openfü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-opendasselbe tun - tatsächlich wird es je nach Desktop-Umgebung anrufen gnome-openoder kde-openoder 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-browseroder gnome-www-browsermehrere Systemverknüpfungen verwenden, die Sie update-alternativeseinrichten 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-browserausfü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-browserimmer der vom Benutzer festgelegte Standard-Webbrowser gestartet. (Ich habe herausgefunden, dass gnome-default-applications-propertiessich 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/commandihn zum Füllen der $BROWSERVariablen verwendet (der Wert wird vom "%s"Teil entfernt). .)
/usr/bin/sensible-browserda 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-utilsPaket und dem System der Alternativen, die in/etc/alternativesund durch modifiziert wurdenupdate-alternatives?