如何在 Debian 中获取可用(即已卸载)软件包的列表?

fre*_*ncy 19 debian package-management ubuntu

基本上我正在寻找的是 Debian 的等价物:

yum list available
Run Code Online (Sandbox Code Playgroud)

向我展示哪些软件包可用(尽管当前未安装)。我更喜欢可以从控制台运行的东西,因为这是在远程服务器上。谢谢。

use*_*686 16

apt-cache 用于查询包缓存:

apt-cache pkgnames | 种类
apt-cache 搜索的东西
apt-cache search --names-only 的东西


rap*_*ink 7

grep-dctrl及其衍生产品提供了一种查询 apt 缓存文件的好方法。(您可以使用 sudo apt-get install dctrl-tools 在 ubuntu 上安装这些工具)

在可用(但不一定已安装)软件包的情况下,您可以使用grep-available. 例如,要列出所有可用的包:

grep-available  -s Package .
Run Code Online (Sandbox Code Playgroud)

编辑:

aptitude 只需启动它,就可以向您显示未安装的软件包列表。

您还可以使用以下命令获取未安装软件包的列表aptitude

aptitude -F "%p" search "?not(?installed)"
Run Code Online (Sandbox Code Playgroud)

请注意,使用新的多架构包,您将获得此结果中列出的其他架构的包。例如,我得到:

aptitude -F "%p" search "?not(?installed)"  | grep "^bash:"
bash:i386
Run Code Online (Sandbox Code Playgroud)

我安装了该bash软件包,但它是 amd64 版本,因为我的操作系统安装了 Ubuntu Precise 的 amd64 版本。如果您不想看到其他架构的这些包,您可以排除包含:以下内容的行:

aptitude -F "%p" search "?not(?installed)"  | grep -v ':'
Run Code Online (Sandbox Code Playgroud)