dpkg-query(1)

名前
dpkg-query - dpkg データベースクエリツール

書式
dpkg-query [option...] command

説明
dpkg-query は、dpkg データベースに格納されたパッケージの情報を表示するツールである。

コマンド

-l, --list [package-name-pattern...]
    指定したパターンにマッチする名前のパッケージを表示する。 package-name-pattern が指定されなかった場合は、not-installed とマークされているもの (完全削除されているパッケージなど) を除き、/var/lib/dpkg/status にある、すべてのパッケージを表示する。package-name-pattern には、標準的なシェルのワイルドカード文字を使用することができる。ただし、シェルにファイル名の展開をさせないように、package-name-pattern をクオートする必要があることに注意。例えば次のコマンドは、“libc6” で始まる名前のすべてのパッケージを表示する:
      dpkg-query -l 'libc6*'
    出力の先頭から 3 つのカラムは、順に期待される動作 (desired action)、パッケージの状況、エラー状態を示す。 期待される動作
      u = Unknown
      i = Install
      h = Hold
      r = Remove
      p = Purge
    パッケージの状況:
      n = Not-installed
      c = Config-files
      H = Half-installed
      U = Unpacked
      F = Half-configured
      W = Triggers-awaiting
      t = Triggers-pending
      i = Installed
    エラーフラグ:
      <empty> = (none)
      R = 要再インストール
    大文字はエラーを示すものであり、パッケージに致命的な問題が発生していることを示す。上記の状態についての詳細は dpkg(1) を参照のこと。 この出力形式は変更できないが、端末の横幅に合わせて自動的に調整される。これは人間が目視することを想定したものであり、コンピュータに適した形式ではない。出力形式の設定方法については、-W (--show) および --showformat を参照のこと。

-W, --show [package-name-pattern...]
    Just like the --list option this will list all packages matching the given pattern. However the output can be customized using the --showformat option. The default output format gives one line per matching package, each line having the name (extended with the architecture qualifier for Multi-Arch same packages) and installed version of the package, separated by a tab.

-s, --status package-name...
    Report status of specified package. This just displays the entry in the installed package status database. When multiple package-name are listed, the requested status entries are separated by an empty line, with the same order as specified on the argument list.

-L, --listfiles package-name...
    List files installed to your system from package-name. When multiple package-name are listed, the requested lists of files are separated by an empty line, with the same order as specified on the argument list. However, note that files created by package-specific installation-scripts are not listed.

-c, --control-path package-name [control-file]
    package-name からインストールされた制御ファイルのパスを表示する。control-file が指定された場合は、該当制御ファイルが存在している場合に限り、その制御ファイルのパスのみが表示される。警告: このコマンドは半ば非公開であり、他の方法がない場合に限り、最後の手段として使用すべきである。このコマンドは、より優れたインタフェースが出現して、現在のアーキテクチャ的な問題点が解決された暁には、廃止される可能性もある。

-S, --search filename-search-pattern...
    指定したパターンにマッチするファイルをインストールしたパッケージを検索する。パターンには、標準的なシェルのすべてのワイルドカード文字を使用することができる。このコマンドでは、メンテナスクリプトで作成された追加ファイルや、 alternative は検索することができない。

-p, --print-avail package-name...
    Display details about package-name, as found in /var/lib/dpkg/available. When multiple package-name are listed, the requested available entries are separated by an empty line, with the same order as specified on the argument list. available ファイルには、dselect を用いた際の更新情報しか保持されていないため、APT ベースのフロントエンドを使っているユーザは、apt-cache show package-name を代わりに使用すべきである。

-h, --help
    利用方法を表示して終了する。

--version
    バージョン情報を表示して終了する。

オプション

--admindir=dir
    dpkg データベースの位置を変更する。デフォルトの位置は /var/lib/dpkg である。

--load-avail
    Also load the available file when using the --show and --list commands, which now default to only querying the status file.

-f, --showformat=format
    このオプションは、--show の出力の書式を指定するものである。書式は、一覧表示される各パッケージの出力を制御する文字列である。 フォーマット文字列中の “\” はエスケープ文字である:
        \n  改行
        \r  復帰 (キャリッジリターン)
        \t  タブ
    任意の文字の前に “\” を配置することで、これに続く文字の特殊な意味を抑制できる。これは “\” や “$” に有用である。 パッケージ情報には、“${field[;width]}” という構文で、パッケージフィールドを参照する変数を含めることができる。各フィールドは右寄せで表示されるが、width に負の値を指定すると左寄せになる。以下の field が認識されるが、これらはステータスファイルに存在している必要はない (内部フィールドやバイナリパッケージに格納されたフィールドの形で最終的に存在していればよい)。
        Architecture
        Bugs
        Conffiles (internal)
        Config-Version (internal)
        Conflicts
        Breaks
        Depends
        Description
        Enhances
        Essential
        Filename (internal, front-end related)
        Homepage
        Installed-Size
        MD5sum (internal, front-end related)
        MSDOS-Filename (internal, front-end related)
        Maintainer
        Origin
        Package
        Pre-Depends
        Priority
        Provides
        Recommends
        Replaces
        Revision (obsolete)
        Section
        Size (internal, front-end related)
        Source
        Status (internal)
        Suggests
        Tag (usually not in .deb but in repository Packages files)
        Triggers-Awaited (internal)
        Triggers-Pending (internal)
        Version
    The following are virtual fields, generated by dpkg-query from values from other fields (note that these do not use valid names for fields in control files):
        binary:Package
        binary:Summary
        db:Status-Abbrev
        source:Package
        source:Version
    The default format string is “${binary:Package}\t${Version}\n”. Actually, all other fields found in the status file (i.e. user defined fields) can be requested, too. They will be printed as-is, though, no conversion nor error checking is done on them. binary:Package is a special field that will print the package name with an architecture qualifier (like "libc6:amd64") if the package has a Multi-Arch field with a value of same, and as such its name could be ambiguous. To get the name of the dpkg maintainer and the installed version, you could run:
      dpkg-query -W -f='${binary:Package} ${Version}\t${Maintainer}\n' dpkg

終了ステータス

0   リクエストされたクエリが正しく実行された。

1   コマンドラインの解析中もしくはクエリの実行中に問題が発生した。これには(--control-path を除き) ファイルやパッケージが存在しなかった場合も含まれる。

環境変数

DPKG_ADMINDIR
    --admindir オプションが設定されておらず、この変数が設定されている場合、この変数の値が dpkg データディレクトリとして用いられる。

COLUMNS
    この設定により、--list オプションによる出力の横幅が設定される。

関連項目
dpkg(1).

翻訳者
高橋 基信 <monyo@monyo.com>. 喜瀬 浩 <kise@fuyuneko.jp>. 関戸 幸一 <sekido@mbox.kyoto-inet.or.jp>. 鍋谷 栄展 <nabe@debian.or.jp>. 倉澤 望 <nabetaro@debian.or.jp>. 石川 睦 <ishikawa@linux.or.jp>. 鵜飼 文敏 <ukai@debian.or.jp>. 中野 武雄 <nakano@apm.seikei.ac.jp>.

翻訳校正
Debian JP Documentation ML <debian-doc@debian.or.jp>.