xdg-open コマンド

ユーザーの優先アプリケーションでファイルまたはURLを開きます。

概要

xdg-openは、ファイルタイプやURLスキームに登録されているデフォルトアプリケーションを使用してファイルやURLを開くデスクトップ非依存のツールです。XDG(X Desktop Group)ユーティリティの一部であり、様々なLinuxデスクトップ環境で動作し、ファイルを関連付けられたアプリケーションで開くための一貫した方法を提供します。

オプション

file

デフォルトアプリケーションで開くファイルまたはURL

$ xdg-open document.pdf

--help

ヘルプ情報を表示する

$ xdg-open --help

--manual

マニュアルページを表示する

$ xdg-open --manual

--version

バージョン情報を表示する

$ xdg-open --version

使用例

デフォルトアプリケーションでファイルを開く

$ xdg-open document.pdf
[デフォルトのPDFビューアでPDFファイルが開かれる]

デフォルトウェブブラウザでURLを開く

$ xdg-open https://www.example.com
[デフォルトのウェブブラウザでURLが開かれる]

ファイルマネージャでディレクトリを開く

$ xdg-open ~/Documents
[デフォルトのファイルマネージャでDocumentsディレクトリが開かれる]

新しいメッセージでメールクライアントを開く

$ xdg-open mailto:[email protected]
[デフォルトのメールクライアントで[email protected]への新しいメッセージが開かれる]

ヒント:

クロスデスクトップ互換性のためにスクリプトで使用する

xdg-openは、ファイルやURLを開く必要があるシェルスクリプトにおいて、デスクトップ環境に依存しない方法として理想的です。GNOME、KDE、Xfceなど、様々なLinuxデスクトップ環境で動作します。

サイレント操作

xdg-openはデフォルトでサイレントに実行されます。エラーメッセージを抑制するには、stderrをリダイレクトします:xdg-open file.pdf 2>/dev/null

終了ステータスの確認

このコマンドは成功時に0、エラー発生時に1、指定されたコマンドが無効な場合に2、必要なツールが見つからない場合に3、アクションが失敗した場合に4を返します。

代替コマンド

macOSでは代わりにopenを使用します。Windowsではstartを使用します。これらのコマンドはそれぞれのオペレーティングシステムで同様の目的を果たします。

よくある質問

Q1. xdg-openと直接アプリケーションを使用することの違いは何ですか?

A. xdg-openはファイルタイプやURLに基づいて適切なアプリケーションを自動的に選択しますが、直接アプリケーションを使用する場合は、どのアプリケーションを使用するかを知っている必要があります。

Q2. xdg-openはどのようにして使用するアプリケーションを決定しますか?

A. ファイルのMIMEタイプとデスクトップ環境のアプリケーション関連付けを使用して、デフォルトアプリケーションを決定します。

Q3. 特定のファイルタイプに対してxdg-openが使用するアプリケーションを変更できますか?

A. はい、デスクトップ環境の設定(例:GNOMEの「デフォルトアプリケーション」)またはxdg-mimeを使用して、ファイルタイプのデフォルトアプリケーションを変更できます。

Q4. xdg-openはすべてのLinuxディストリビューションで動作しますか?

A. XDG仕様に従った最新のLinuxディストリビューション、特にGNOME、KDE、Xfceデスクトップ環境を持つものでは動作します。

参考文献

https://www.freedesktop.org/wiki/Software/xdg-utils/

改訂履歴