連載
» 2019年05月31日 05時00分 公開

Linux基本コマンドTips(309):【 xdg-mime 】コマンド――GUI環境におけるデフォルトアプリケーションを確認する

本連載は、Linuxのコマンドについて、基本書式からオプション、具体的な実行例までを紹介していきます。今回は、GUI環境におけるデフォルトアプリケーションを確認する「xdg-mime」コマンドです。

[西村めぐみ,@IT]
「Linux基本コマンドTips」のインデックス

Linux基本コマンドTips一覧

 本連載は、Linuxのコマンドについて、基本書式からオプション、具体的な実行例までを紹介していきます。今回は、GUI環境でファイルをダブルクリック後に起動するデフォルトアプリケーションを確認できる「xdg-mime」コマンドです。

xdg-mimeコマンドとは?

 「xdg-mime」はGUI環境でファイルをダブルクリック後に起動するデフォルトアプリケーションを設定、確認するコマンドです。Windows環境での「関連付け」に相当します。「xdg-open」コマンド(連載第310回)を使ったときに起動するアプリケーションも確認できます。

 デフォルトアプリケーション(関連付けの情報)は、GUI環境でファイルを右クリック後、[プロパティ]−[開き方]で確認、変更できます。ここでは、xdg-mimeコマンドでデフォルトアプリケーションを確認する方法のみを紹介します。

 なお、xdg-mimeコマンドの実体はシェルスクリプトです。シェルスクリプト内部では、環境に応じて「gvfs-mime」コマンド(GNOME環境)や「kde_mime」コマンドなどを実行しています。



xdg-mimeコマンドの書式

xdg-mime コマンド コマンドに応じた指定

xdg-mime query filetype ファイル名

xdg-mime query default ファイルタイプ

※「query」の他に、デフォルトのアプリケーションを指定する「default」、MIME情報を追加する「install」、削除する「uninstall」コマンドがある。





xdg-mimeの主なコマンド

コマンド 意味
query 情報を表示する(filetypeまたはdefaultを指定する:本文を参照
default デフォルトのアプリケーションを指定する(アプリケーションとMIMEタイプを指定する)
install ファイルタイプを追加する(拡張子などの情報を記述したXMLファイルを指定する)
uninstall ファイルタイプを削除する(拡張子などの情報を記述したXMLファイルを指定する)

xdg-mimeの主なオプション

長いオプション 意味
--mode モード install/uninstall時に、「user」(カレントユーザー用)または「system」(全ユーザー用、root権限が必要)を指定する
--novendor install時に、適切な拡張子が指定されているかどうかのチェックを省略する

XMLファイル例(「man xdg-mime」より)

<?xml version="1.0"?>
<mime-info xmlns='http://www.freedesktop.org/standards/shared-mime-info'>
  <mime-type type="text/x-shiny">
    <comment>Shiny new file type</comment>
    <glob pattern="*.shiny"/>
    <glob pattern="*.shi"/>
  </mime-type>
</mime-info>


ファイルタイプと関連付けを確認する

 「xdg-mime query filetype ファイル名」で、指定したファイルの「ファイルタイプ」(MIMEタイプ)を表示します(画面1)。

 「xdg-mime query default ファイルタイプ」で、ファイルタイプに関連付けされたアプリケーションを表示します。アプリケーションの具体的なコマンド名は、「/usr/share/applications/」下の定義ファイルで確認できます(※1)。

※1 具体的な定義内容は「/usr/share/applications/アプリケーション名」という定義ファイル(例えば画面2にある「/usr/share/applications/evince.desktop」)で確認できる。



コマンド実行例

xdg-mime query filetype ファイル名

(ファイルタイプを表示する)

xdg-mime query filetype sample.pdf

(sample.pdfのファイルタイプを表示する)

xdg-mime query default ファイルタイプ

(ファイルタイプに関連付けられたアプリケーションを表示する)

xdg-mime query default application/pdf

(「application/pdf」に関連付けられているアプリケーションを表示する)(画面2


画面1 画面1 幾つかのファイルについて、ファイルタイプを確認したところ

 画面2では、画面1で分かったファイルタイプの一つである「application/pdf」について、アプリケーションを確認しています。その後、「evince.desktop」について、定義内容を「less」コマンドで確認しています。ここでは、実行コマンド名の定義である「Exec=」という行を検索したいため、「-p Exec」と指定しています。「-p」は検索パターンを指定するオプションです(第85回)。

画面2 画面2 特定のファイルタイプについてアプリケーションを確認したところ

 画面3は、画面2にあるlessコマンドの実行結果です。

画面3 画面3 「less -p Exec /usr/share/applications/evince.desktop」の実行画面

 なお、定義ファイルでは、アプリケーション名なども定義されています(画面4)。デスクトップ環境では、ファイルを右クリック後、「プロパティ」画面の「開き方」タブで関連付けの情報を確認できます(画面5)。

画面4 画面4 evince.desktopの内容を表示したところ /usr/share/applications/evince.desktopの内容を示した
画面5 画面5 sample.pdfのプロパティを表示したところ


筆者紹介

西村 めぐみ(にしむら めぐみ)

元々はDOSユーザーで「DOS版UNIX-like tools」を愛用。ソフトハウスに勤務し生産管理のパッケージソフトウェアの開発およびサポート業務を担当、その後ライターになる。著書に『図解でわかるLinux』『らぶらぶLinuxシリーズ』『Accessではじめるデータベース超入門[改訂2版]』『macOSコマンド入門』など。地方自治体の在宅就業支援事業にてMicrosoft Officeの教材作成およびeラーニング指導を担当。会社などの"PCヘルパー"やピンポイント研修なども行っている。


Copyright © ITmedia, Inc. All Rights Reserved.

RSSについて

アイティメディアIDについて

メールマガジン登録

@ITのメールマガジンは、 もちろん、すべて無料です。ぜひメールマガジンをご購読ください。