コマンドライン操作において関連付けに基づいてファイルなどをソフトで開いてくれる機能(xdg-openなど)

Linuxのデスクトップ環境でコマンド操作を行うときに、引数に与えたファイルやフォルダなどを自動で判断して適切なソフトで立ち上げてくれる仕組みがあります。xdg-openというコマンドがその一つで、他にはgnome-openやgvfs-open、exo-openなどがあったりします。

例えばPDFファイル(sample.pdf)があったときに
$ xdg-open sample.pdf
のようにコマンドを実行すると、設定されているPDFビューアソフトでPDFファイルが開きます。
他には以下のようにフォルダ(ディレクトリ)を引数として与えると
$ xdg-open Documents
設定されているファイルマネージャーでそのディレクトリが開きます。

また以下のように引数にURLを指定すれば
$ xdg-open https://yutarine.blogspot.jp
WebブラウザーでそのURLへアクセスしてくれます。他にはメールアドレスを指定すればメーラーが開かれたりいろいろ出来るそうです。

どうやらデスクトップ環境によって個別のコマンドが用意されているようです。
  • GNOME環境 : gnome-open, gvfs-open
  • KDE環境 : kde-open
  • Xfce環境 : exo-open
などという関係のようです。どのファイルをどのソフトが開くのかといった関連付けはそれぞれのデスクトップ環境の設定に基づくらしいです。xdg-openに関してはデスクトップ環境を判断して機能するとかなんとか。
このへんはちょっとネットで流し読みした程度の知識しかないので、関連付けの設定方法などはあまりよく分かりません。
(気が向いた時にでも調べてみようかしら)

GUI操作とコマンドライン操作を行ったり来たりすることが多い場合は便利に使える機能かなと思います。

コメント