Ответы:
sensible-browser это команда, которую вы ищете.
sensible-browserоткрывается Opera вместо pf по умолчанию Chrome. xdg-openработает как положено.
sensible-browserне следует предпочтениям пользователя, настроенным в едином центре управления. xdg-openделает.
Поиском в гугле я нашел ответ.
xdg-open открывает файл или URL в предпочтительном приложении пользователя. Если указан URL-адрес, он будет открыт в предпочтительном веб-браузере пользователя. Если файл предоставлен, файл будет открыт в предпочтительном приложении для файлов этого типа. xdg-open поддерживает URL-адреса файлов, ftp, http и https.
xdg-open является частью пакета xdg-utils и уже установлен в Ubuntu 10.10.
Вы также можете использовать:
x-www-browser http://some-url.org
И он откроет URL в браузере по умолчанию.
При настройке Ubuntu по умолчанию на ум приходит только команда gnome-open.
gnome-open http://askubuntu.com
gnome-openпрактически все типы файлов, URI и каталоги. Это одна команда, чтобы учиться, вместо того, чтобы пытаться вспомнить о таких непонятных командах, какsensible-browser
xdg-openдолжен делать то же самое - на самом деле, он будет вызывать gnome-open, или kde-open, или как угодно, в зависимости от среды вашего рабочего стола. Таким образом, это более портативно.
Я немного поиграл с этим. Существует проблема с gnome-open- он не будет вызывать веб-браузер по умолчанию, если вы не укажете URL. Это проблема, если вы хотите установить значок или ярлык, который всегда будет запускать браузер, который установлен по умолчанию. В других случаях вам может потребоваться установить его в качестве параметра для некоторых программ, которым требуется ссылка на веб-браузер и которые плохо работают с gnome-open(например:) acroread. Вы могли бы решить эту проблему с помощью любого x-www-browserили gnome-www-browserсистемы связи , которые вы можете создать с помощью update-alternatives, но те широкие настройки системы, а не пользователь конкретных (и они не синхронизированы со значениями , установленными через gnome-default-applications-properties. Все это можно решить, открыв sensible-browserисполняемый файл (который это на самом деле скрипт)
sudo gedit $(which sensible-browser)
и добавив это в начале:
#!/bin/bash
BROWSER=$(gconftool -g /desktop/gnome/url-handlers/http/command)
export BROWSER="${BROWSER//"\"%s\""/}"
Это позволит sensible-browserвсегда запускать указанный пользователем веб-браузер по умолчанию. (Я обнаружил, что gnome-default-applications-propertiesнекоторые ключи gconf изменяются в соответствии с установленным в данный момент браузером. Значение браузера по умолчанию можно получить с помощью любого из этих ключей, поэтому я /desktop/gnome/url-handlers/http/commandиспользовал его для заполнения $BROWSERпеременной (значение отбирается из "%s"части) .)
/usr/bin/sensible-browserпоскольку этот ответ рекомендует. Это изменение будет перезаписано при обновлении системы.
Просто вы можете найти это полезным. Резервный подход и один лайнер.
URL="https://www.url.com/some"; xdg-open $URL || sensible-browser $URL || x-www-browser $URL || gnome-open $URL
Хорошее чтение для не знакомых с логическими операторами https://www.howtogeek.com/269509/how-to-run-two-or-more-terminal-commands-at-once-in-linux/ .
; => запустить во всех случаях,
|| => выполнить, если предыдущая команда завершилась неудачно (или)
&& => запускаться только в случае успеха предыдущей команды
а также
var = someval -> установить переменную
$ var -> вызвать переменную
sensible-utilsпакетом и системой альтернатив, найденных/etc/alternativesи измененныхupdate-alternatives?