回答:
このスレッドによると:
インストールされているパッケージを一覧表示するには:
dpkg --list | wc --lines
パッケージがインストールされているかどうかを確認するには:
dpkg --list | grep package
dpkg -l | grep -c '^ii'
dpkg -l | grep -c '^?i'
インストールされているが削除を要求したパッケージを含めたい場合など、微妙なバリエーションがあります。別の方法は
aptitude search '~i' |wc -l
dpkgデータベースに直接突くこともできます:
sh -c 'set /var/lib/dpkg/info/*; echo $#'
これには、インストールされていないが構成ファイルが残っているパッケージが含まれます。これらをでリストできますdpkg -l | grep '^rc'
。
私が使用しているのは:
dpkg --get-selections | wc --lines
これにより、インストールされているパッケージの数がわかります。
特定のパッケージがインストールされているかどうかを確認するには、次を使用します。
dpkg --get-selections | grep <package>
これにより、インストールされていない他のパッケージを含めることに関するGillesの不満が解決されると思います。
パッケージの正確な数がdpkg-query -l
必要な場合は、によって出力されるヘッダー行をカウントしないでください。そのため、で始まる行に一致するパターンが必要ii
です。次のワンライナーは、開始する行ii
の数、したがってインストールされているパッケージの数を示します。
dpkg-query -l | grep "^ii" | wc -l
これは同じ出力を与えます
dpkg --get-selections | grep "[[:space:]]install" | wc -l
2番目のコマンドのgrepパターンは、の出力に文字列「deinstall」を含む行を無視しますdpkg --get-selections
。
インスタンスの場合、これを行うことができます:
dpkg-query -l | nl | tail -1 | awk '{print $1}'
nl | tail -1 | awk '{print $1}'
、入力の行数を報告するのは事実です(ただし、入力がない場合は、報告する代わりに何も表示されません0
)wc -l
。
rc
(アンインストールされたが、構成ファイルが残っている))をカウントに含めています。