Подтвердить что ты не робот

Linux: команда для открытия URL-адреса в браузере по умолчанию

Какую команду мы должны выполнить (от Java, но это не имеет значения) в Linux (разные общие дистрибутивы), чтобы открыть данный URL в браузере по умолчанию?

4b9b3361

Ответ 2

Я считаю, что самым простым методом было бы использовать Python:

python -m webbrowser "http://www.example.com/"

Ответ 3

на ubuntu вы можете попробовать gnome-open.

$gnome-open http://www.google.com

Ответ 4

В Java (версия 6+) вы также можете:

Desktop d = Desktop.getDesktop();
d.browse(uri);

Хотя это не будет работать на всех Linux. На момент написания Gnome поддерживается, KDE - нет.

Ответ 5

По крайней мере, на Debian и всех его производных есть оболочка "разумного браузера" script, которая выбирает браузер, наиболее подходящий для данного URL.

http://man.he.net/man1/sensible-browser

Ответ 6

Я думаю, что использование xdg-open http://example.com, вероятно, лучший выбор.

Если они не установлены, я полагаю, что они могут иметь только kde-open или gnome-open (оба из которых берут один файл /url ) или какое-либо другое обходное решение, такое как переключение на обычные исполняемые имена браузера, пока вы не найдите тот, который может быть выполнен (с помощью которого). Если вам нужен полный список обходных решений/резервных копий, я предлагаю прочитать xdg-open (это оболочка script, которая вызывает kde-open/gnome-open/etc или какой-либо другой резерв).

Но так как xdg-open и xdg-mime (используемые для одного из резервных копий), являются оболочечными сценариями, которые я бы рекомендовал включать в их приложение, и если вызов which xdg-open не позволяет добавить их к временной переменной PATH в вашей среде подпрограмм и обратится к ним. Если xdg-open завершается с ошибкой, я бы рекомендовал бросить исключение с сообщением об ошибке из того, что он вывел на stderr, и поймать исключение и распечатать/отобразить сообщение об ошибке.

Я бы проигнорировал решение для java awt Desktop, поскольку ошибка, похоже, указывает, что они не планируют поддерживать настольные компьютеры без gnome в ближайшее время.

Ответ 7

sensible-browser [options] [URL or filename]; # Said to be the best.
# Server translates to: 
echo $BROWSER;
w3m [options] [URL or filename]
# Desktop (X11): I use/prefer,
x-www-browser http://tv.jimmylandstudios.com

Ответ 8

Я думаю, что комбинация xdg-open, описанная shellholic, и - если она терпит неудачу - решение найти браузер с помощью команды which, как описано здесь, вероятно, лучшее решение.

Ответ 9

В дистрибутивах, которые входят с командой open,

$ open http://www.google.com