本連載は、Linuxのコマンドについて、基本書式からオプション、具体的な実行例までを紹介していきます。今回は、ファイル名から収録されているパッケージを探す「apt-file」コマンドです。
本連載は、Linuxのコマンドについて、基本書式からオプション、具体的な実行例までを紹介していきます。今回は、ファイル名から収録されているパッケージを探す「apt-file」コマンドです。
apt-fileコマンドは、ファイルがどのパッケージ(debファイル)に収録されているかを検索するコマンドです。インストールされていないパッケージも対象になります。
apt-fileがインストールされていない場合は「sudo apt install apt-file」(または「sudo apt-get install apt-file」)として、インストールしてください ※1。
※1 パッケージを利用してソフトウェアをインストールする場合は、aptコマンド(第139回)などを使う。
apt-file [オプション] [アクション] [パターン]
※[ ]は省略可能な引数を示しています。
短いオプション | 長いオプション | 意味 |
---|---|---|
-F | --fixed-string | パターン全体と一致するものだけを対象にする(本文参照) |
-i | --ignore-case | 大文字小文字を区別しない |
-x | --regexp | パターンを正規表現として解釈する |
-f | --from-file | パターンをファイルから読み込む |
-D | --from-deb | パターンにdebファイル名を指定する(例えば「apt-file -D list sample.deb」では、sample.debに収録されているファイルが一覧表示される) |
※ パターンが「-」で始まる場合は、オプションの最後に「--」を入れる。例えば「-3g」という文字列を検索したい場合は「apt-file -- search -3g」のようにする。
短いオプション | 長いオプション | 意味 |
---|---|---|
-a 種類 | --architecture 種類 | アーキテクチャ(amd64、i386など)を指定する |
-c 場所 | --cache 場所 | キャッシュディレクトリの場所を指定する |
-d 場所 | --cdrom-mount 場所 | CD-ROMのマウントポイントを指定する |
-s ファイル | --sources-list ファイル | sources.listを指定する(通常は/etc/apt/sources.list、本文参照) |
-N | --non-interactive | ユーザーからの入力を待たずに実行する |
-y | --dummy | ダミーモードで動作する(何も行わない) |
-l | --package-only | パッケージ名だけを表示する |
-v | --verbose | 動作内容を表示しながら実行する |
アクション名 | 動作 |
---|---|
search(またはfind) | パターンで指定した名前のファイルが含まれているパッケージを一覧表示する |
list(またはshow) | パターンで指定したパッケージに収録されているファイルを一覧表示する |
purge | キャッシュを削除する |
update | パッケージリストを/etc/apt/sources.listに従い再取得する |
「apt-file search パターン」で、指定したパターン(ファイル名)を含むパッケージを一覧表示します(画面1)。
例えば、コマンドを利用するときや、パッケージをインストールする際に、××というファイルが不足していた、こういった場合に便利です。インストール元のパッケージが分からない場合にも役立ちます。
コマンド名の他、ライブラリやソースファイルなど、パッケージに収録されているファイルであれば、インストールされている、いないにかかわらず、検索対象となります。
apt-file用のデータベースは「/etc/apt/sources.list」を基に作成されます。このファイルはパッケージの入手先などを設定するファイルです ※2。初めてapt-fileを使用する場合や、/etc/apt/sources.listを変更した後には「apt-file update」で適宜更新してください。
※2 /etc/apt/sources.listについては、第141回を参照。
apt-file update
(apt-file用のデータベースを更新する)(画面1)
apt-file search パターン
(名前にパターンを含むファイルを収録しているパッケージを表示する)(画面1)
※ 画面1では、Debianの情報サイトである「Debian Wiki」で扱っている例を取り上げた。
「指定したパターンと完全に一致するファイル」で検索したい場合は、「-F」オプションを使用します。この場合は、ファイルをフルパスで指定する必要があります(画面2)。
apt-file -F search パターン(画面2)
(名前がパターンと完全に一致するファイルを収録しているパッケージを表示する)
なお、「dpkg」コマンド(apt以前から使われてきたdebパッケージを操作するコマンド)の場合、「dpkg -S /usr/bin/zip」で同様な検索ができます。ただし、この場合はインストール済のパッケージだけが対象です。
「apt-file list パッケージ」で、指定したパッケージに収録されているファイルを一覧表示します。この場合も、パッケージ名と完全一致させたい場合は「-F」オプションを指定してください(画面3)。
apt-file list zip
(パッケージ名にzipを含むパッケージに収録されているファイルを一覧表示する)
apt-file -F list zip(画面3)
(zipというパッケージに収録されているファイルを一覧表示する)
なお、dpkgの場合は「dpkg -L パッケージ名」で、指定したパッケージに収録されているファイルを一覧表示します。この場合もインストール済のパッケージだけが対象です。インストール前の場合は「-c」オプションでdebファイルを直接指定して、「dpkg -c sample.deb」のようにします。
西村 めぐみ(にしむら めぐみ)
PC-9801NからのDOSユーザー。PC-486DX時代にDOS版UNIX-like toolsを経てLinuxへ。1992年より生産管理のパッケージソフトウェアの開発およびサポート業務を担当。著書に『図解でわかるLinux』『らぶらぶLinuxシリーズ』『はじめてでもわかるSQLとデータ設計』『シェルの基本テクニック』など。2011年より、地方自治体の在宅就業支援事業にてPC基礎およびMicrosoft Office関連の教材作成およびeラーニング指導を担当。
Copyright © ITmedia, Inc. All Rights Reserved.