Apt-cache:如何列出所有已安装的软件包及其版本号?

Apt-cache:如何列出所有已安装的软件包及其版本号?

apt-cache dump --installed不起作用,它还列出了未安装的软件包。

我想逐行列出安装包,并附上安装的版本号。

答案1

尝试dpkg -l

它列出了软件包、版本和简短的描述。

答案2

最简单的方法是使用dpkg,但它可能会显示一些多余的包,并且会截断较长的包名称和版本号:

dpkg -l

仅列出正确安装的软件包并且不截断名称:

dpkg -l | grep '^ii'

为了更好地控制输出格式,您可以使用dpkg-query

dpkg-query -W -f '${status} ${package} ${version}\n' | \
sed -n 's/^install ok installed //p'

答案3

其他命令可以是:

apt-show-versions

它还为您提供有关软件包状态(最新、可升级等)和原始发行版(wheezy、jessie 等)的信息。您可以轻松过滤掉来自 backport 或其他外来存储库的软件包。

此程序单独打包。请先安装:

apt-get install apt-show-versions

答案4

要列出每个已安装包的名称,请以任何用户身份输入:

dpkg --get-selections

你将获得如下输出:

accountsservice              install
aclinstall                   install
acpi-supportinstall          install
acpidinstall                 install
...

要删除不必要的“安装”字符串,您可以使用sed

dpkg --get-selections | sed 's:install$::'

如果你想将其保存到名为已安装的软件包,你输入:

dpkg --get-selections | sed 's:install$::' > InstalledPackages

相关内容