我想弄清楚在Ubuntu (14.04/16.04)系统上安装的每个软件包/软件。
根据我的理解,以及关于SE和其他方面的一些讨论,比如unix_堆栈_交换 问_ubuntu,看起来无论在系统上安装了什么软件包/软件,dpkg最终都会被使用(不管是用于包本身还是它的依赖项)。
发布于 2017-02-07 13:43:54
dpkg -l将始终给出已安装(或删除但仍配置)包的正确列表。它实际上使用dpkg-query来完成它的工作,并且引用/var/lib/dpkg/status的内容,这是对已安装的包的引用。
apt使用相同的信息,但直到最近还没有提供一种简单的方法来列出包;apt list现在就这样做了,您将得到dpkg -l给出的相同结果(以不同的格式)。
dpkg可用于列出所有包。如果一个系统上的所有软件都是用软件包安装的,那么它会列出所有的软件;但是如果有任何软件是手动安装的,没有软件包,那么它就不知道了。
发布于 2017-02-07 13:46:13
您可以在选项中使用apt (man apt-cache,man apt .)获取所需的信息
dpkg还是apt?
dpkg应该被看作是一个系统工具(后端),而apt是一个更接近用户的工具,这克服了前者的局限性。这些工具一起工作,每个工具都有其特殊性,适合于特定的任务。
e,g1:您可以通过dpkg或apt列出系统上安装的包:
apt list --installed
dpkg -le,g2:要找出依赖关系,可以使用apt-rdepends或apt-cache showpkg .
apt-rdepends <package_name>
apt-cache showpkg <package_name>https://unix.stackexchange.com/questions/343152
复制相似问题