ターミナルからデフォルトのWebブラウザを起動する方法は?


87

デフォルトのWebブラウザを開くための端末コマンドは何だろうと思っていました。

回答:


93

sensible-browser 探しているコマンドです。


sensible-utilsパッケージと/etc/alternativesによって検出および変更された代替システムの違いはどうupdate-alternativesですか?
enzotib

8
私にとってsensible-browserは、デフォルトのChromeの代わりにOperaを開きます。xdg-open期待どおりに動作します。
14年


2
sensible-browserunity-control-centreで設定されたユーザー設定に従いません。xdg-openします。
タンクマン六四

78

Googleで検索すると、答えが見つかりました。

xdg-openは、ユーザーの優先アプリケーションでファイルまたはURLを開きます。URLが提供されている場合、URLはユーザーの好みのWebブラウザーで開かれます。ファイルが提供されている場合、そのタイプのファイルの優先アプリケーションでファイルが開かれます。xdg-openは、ファイル、ftp、httpおよびhttps URLをサポートします。

xdg-openxdg-utilsパッケージの一部であり、すでにUbuntu 10.10にインストールされています。


xdgは何の略ですか?それを知らずに覚えるのは難しい。
Thupten

1
XDGは、Xデスクトップグループ別名freedesktop.orgの略
ルカ

デフォルトのUbuntu 16.04インストールでも引き続き機能します。
アンドレアスハッカー

1
ユーザーがデフォルトでテキストエディタでhtmlファイルを開くように設定した場合、これは機能しません。OPは、htmlファイルのデフォルトのアプリケーションではなく、Webブラウザーを開く方法を要求します(デフォルトでは同じですが)
-phil294

これは、( -例えばDebianの、* buntu、フェドーラ、manjaro、アーチなどそれはちょうど約それらのすべてである)のXサーバーのウィンドウマネージャを持つ任意のGNU / Linuxディストリビューションで動作します
flurbius

14

以下も使用できます。

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

そして、デフォルトのブラウザでURLを開きます。


2
私にとって、Ubuntu 16.04では、Chromiumが「デフォルトのアプリケーション」設定でデフォルトのブラウザとして設定されていても、Firefoxが開きます。
アンドレアスハッカー

4

デフォルトのUbuntuセットアップでは、gnome-openコマンドのみが頭に浮かびます。

gnome-open http://askubuntu.com

4
デフォルトのUbuntuセットアップでは、sensible-browserおよびxdg-openコマンドも機能します。
marenostrum

1
利点は、gnome-openほぼすべてのファイルタイプ、URI、ディレクトリに使用できることです。次のようなあいまいなコマンドを思い出そうとするのではなく、学ぶべきコマンドの1つです。sensible-browser
Stefan Lasiewski

6
@Stefan Lasiewski:xdg-open同じことを行う必要があります-実際には、デスクトップ環境に応じて、、gnome-openまたはkde-open、または何でも呼び出します。したがって、よりポータブルです。
Piskvor

Ubuntu 16.04では、gnome-openはデフォルトではインストールされません
Andreas Hacker

1
GNOME-オープンには、より一般的なとしてのxdgを使用したほうが良い、GNOMEデスクトップに依存している
flurbius

2

これを少し遊んでみました。問題がありますgnome-open— URLを指定しない限り、デフォルトのWebブラウザーを起動しません。デフォルトとして設定されているブラウザを常に起動するアイコンまたはショートカットを設定する場合、これは問題です。また、Webブラウザーへのリンクを必要とし、うまく機能しない一部のプログラムのパラメーターとして設定する必要がある場合もあります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常にユーザー指定のデフォルトWebブラウザーが起動します。(gnome-default-applications-properties現在設定されているブラウザに応じてgconfキーを変更することがわかりました。これらのキーのいずれかからブラウザのデフォルト値を取得できる/desktop/gnome/url-handlers/http/commandため、$BROWSER変数を埋めるために使用しました(値は"%s"部分から削除されます) )


1
/usr/bin/sensible-browserこの回答が推奨しているように編集することはお勧めしません。この変更は、システムのアップグレード時に上書きされます。
ジル14

変更されたスクリプトをユーザーシステムにインストールするのではなく、Lucaの答えに従ってxdg-openを使用するのがより現実的なソリューションです。htmlファイルまたはURLを指定すると、ブラウザーが開きます-他に何かを指定すると、そのタイプのリソースに適したアプリケーションが開きます。デフォルトで、またはユーザーの明示的な選択に従って、他のアプリケーションで適切に処理される場合、ブラウザでファイルを開く正当な理由はないと思います。必要に
応じ

1

ちょうどあなたがそれを役に立つと思うかもしれません。フォールバックアプローチと1つのライナー。

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->変数を呼び出す


1
これを見る他の人があなたの答えについてもっと知るように、このコマンドが何をするのかを説明することを検討してください。リンクは良好ですが、リンクの重要なコンテンツが回答の一部である場合(リンクが将来消滅する場合)、回答に含まれていることを確認する必要があります。
ズザッハ...

1
@Zzzach ...やった!そして、私はポイントを得る。それは簡単な問題でしたが。
モハメド・アラル
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.