Como iniciar o navegador padrão do terminal?


87

Eu queria saber qual é o comando do terminal para abrir o navegador da web padrão.

Respostas:


93

sensible-browser é o comando que você está procurando.


E as diferenças entre o sensible-utilspacote e o sistema de alternativas encontradas /etc/alternativese modificadas por update-alternatives?
enzotib 19/10/10

8
Para mim, sensible-browserabre o Opera em vez do Chrome padrão. xdg-openfunciona como esperado.
incrop

2
o que o @Incrop disse ainda é verdadeiro para o Ubuntu 16.04, isso abre o Firefox em vez do meu navegador padrão Chromium.
Andreas Hacker

2
sensible-browsernão segue a preferência do usuário configurada no centro de controle da unidade. xdg-openfaz.
Tankman #

78

Pesquisando no Google, encontrei a resposta.

O xdg-open abre um arquivo ou URL no aplicativo preferido do usuário. Se um URL for fornecido, o URL será aberto no navegador da web preferido do usuário. Se um arquivo for fornecido, o arquivo será aberto no aplicativo preferido para arquivos desse tipo. O xdg-open suporta URLs de arquivo, ftp, http e https.

O xdg-open faz parte do pacote xdg-utils e já está instalado no Ubuntu 10.10.


xdg de quê? É difícil de lembrar sem saber disso.
Thupten

1
XDG significa X Grupo desktop aka freedesktop.org
Luca

Ainda funciona em uma instalação padrão do Ubuntu 16.04.
Andreas Hacker

1
se o usuário tiver configurado uma vez para abrir arquivos html com um editor de texto por padrão, isso não funcionará. OP pede uma maneira de abrir o navegador web , não o aplicativo padrão para arquivos HTML (mesmo que por padrão é o mesmo)
phil294

Isso funcionará em qualquer distro gnu / linux que possua gerenciador de janelas x-server (que é praticamente todas elas - por exemplo, debian, * buntu, fedora, manjaro, Arch etc)
flurbius

14

Você também pode usar:

x-www-browser http://some-url.org

E abrirá o URL no navegador padrão.


2
para mim, no Ubuntu 16.04, isso abrirá o Firefox, mesmo que o Chromium esteja definido como o navegador padrão na configuração "Aplicativos padrão".
Andreas Hacker

4

Com a configuração padrão do Ubuntu, apenas o comando gnome-open vem à mente.

gnome-open http://askubuntu.com

4
Com a configuração padrão do Ubuntu, os comandos sensible-browser e xdg-open também funcionam.
Marenostrum 19/10/10

1
A vantagem é que você pode usar gnome-openpara quase todos os tipos de arquivos, URIs e diretórios. É um comando para aprender, em vez de tentar lembrar sobre comandos obscuros comosensible-browser
Stefan Lasiewski

6
@ Stefan Lasiewski: xdg-opendeve fazer a mesma coisa - na verdade, ele chamará gnome-openou kde-open, ou o que seja, dependendo do seu ambiente de área de trabalho. Assim, é mais portátil.
Piskvor

no Ubuntu 16.04, gnome-aberto não é instalado por padrão
Andreas Hacker

1
gnome-aberto é dependente do desktop GNOME, melhor fora de usar xdg como seu mais comum
flurbius

2

Eu brinquei um pouco com isso. Há um problema com gnome-open- ele não chamará o navegador da web padrão, a menos que você especifique um URL. Isso é um problema se você deseja configurar um ícone ou um atalho que sempre iniciará o navegador definido como padrão. Outras vezes, pode ser necessário configurá-lo como parâmetro para alguns programas que exigem um link para um navegador da Web e não funcionam bem gnome-open(por exemplo acroread:). Você pode resolver isso usando um x-www-browserou gnome-www-browsersistema links que você pode configurar update-alternatives, mas essas são configurações de todo o sistema, não específicas do usuário (e não são sincronizadas com os valores definidos gnome-default-applications-properties. Tudo isso pode ser resolvido abrindo o sensible-browserexecutável (que é realmente um script):

sudo gedit $(which sensible-browser)

e adicionando isso no começo:

#!/bin/bash
BROWSER=$(gconftool -g /desktop/gnome/url-handlers/http/command)
export BROWSER="${BROWSER//"\"%s\""/}"

Isso sensible-browsersempre fará com que o navegador da web padrão especificado pelo usuário seja iniciado. (Descobri que gnome-default-applications-propertiesaltera algumas chaves do gconf de acordo com o navegador atualmente configurado. O valor padrão do navegador pode ser obtido em qualquer uma dessas chaves, então procurei /desktop/gnome/url-handlers/http/commande o usei para preencher a $BROWSERvariável (o valor é despojado da "%s"parte) .)


1
Eu não recomendaria a edição, /usr/bin/sensible-browsercomo recomenda esta resposta. Essa alteração será substituída em uma atualização do sistema.
Gilles

em vez de tentar instalar um script modificado no sistema de um usuário, uma solução mais realista é usar o xdg-open conforme a resposta de Luca. Se você especificar um arquivo html ou uma URL, ele abrirá o navegador - se você fornecer outra coisa, ele abrirá um aplicativo apropriado para esse tipo de recurso. Duvido que exista alguma boa razão para abrir algum arquivo com um navegador, quando ele será tratado melhor por outro aplicativo, por padrão ou de acordo com a opção explícita do usuário. Se for necessário, você pode forçar o navegador a abri-lo com o x-www-browser (consulte a resposta de Benjamin)
flurbius

1

Só para você achar útil. Uma abordagem de fallback e um forro.

URL="https://www.url.com/some"; xdg-open $URL || sensible-browser $URL || x-www-browser $URL || gnome-open $URL

Boa leitura para quem não conhece os operadores lógicos https://www.howtogeek.com/269509/how-to-run-two-or-more-terminal-commands-at-once-in-linux/ .

; => executar em todos os casos,

|| => execute se o comando precedente falhar (ou)

&& => executar apenas se o comando precedente for bem-sucedido

e

var = someval -> define uma variável

$ var -> invoca a variável


1
Considere explicar o que esse comando faz para que outras pessoas que o veem saibam mais sobre sua resposta. Os links são bons, mas você precisa garantir que o conteúdo principal do link esteja na sua resposta se ele fizer parte da sua resposta (caso o link acabe no futuro).
Zzzach ... 18/04

1
@Zzzach ... done! e eu entendi o ponto. Embora fosse uma questão simples.
Mohamed Allal 18/04
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.