看完之后这个问题,我仍然对另外两个命令感到困惑,即apt-cache pkgnames
和dpkg --list
。apt-cache pkgnames
不返回与apt list
另一个问题中提到的命令相同的列表。你能告诉我这三者有什么区别吗?
答案1
apt-cache pkgnames
专为制表符补全而设计:它快速生成apt
系统主架构中已知的所有包名称的列表(无论是已安装、远程可用,还是只是在某些其他包的关系中提到)。它不适合人类直接使用,并且不会花费太多时间进行过滤,因此它列出了其他命令不一定显示的包(例如虚拟包)。
dpkg --list
列出所有已知的软件包dpkg
,以及它们的状态、描述和版本;dpkg
不知道远程软件包,因此这主要列出了已安装或删除(但未清除)的软件包。
apt list
列出所有已知的软件包apt
,以及它们所在的存储库、它们是否已安装、可用版本以及它们是否可升级。它与 共享相同的基本软件包列表apt-cache pkgnames
,但它包括任何配置的体系结构;例如,在典型的多体系结构amd64
/i386
设置中,apt-cache pkgnames
不会列出i386
-only 软件包,但apt list
会。
dpkg --list
并apt list
支持各种选项和过滤器来限制它们显示的内容。