根据我的观察,在10.04版本中,aptitude和apt-get的主要区别是:
1.
aptitude
添加了明确的每个软件包标志,指示软件包是否是自动安装以满足依赖关系:您可以操作这些标志(aptitude markauto
或 aptitude unmarkauto
)来改变 aptitude 对待该软件包的方式。
apt-get
也会跟踪相同的信息,但不会明确显示。可以使用 apt-mark
来操作这些标志。
2.
aptitude
每次删除一个已安装的软件包时,都会提供删除未使用的软件包的选项,而 apt-get
只有在明确要求使用 apt-get autoremove
或指定 --auto-remove
时才会执行。
3.
aptitude
是一个单一的命令行前端,用于大部分 apt-get
和 apt-cache
的功能。注意:从 16.04 版本开始,有一个包含了最常用命令的 apt
命令,并且还增加了一些额外功能。
4.
与 apt-cache
的 "search" 不同,aptitude
的 "search" 输出还显示了软件包的已安装/已删除/已清除状态(以及 aptitude 自己的状态标志)。此外,"install" 输出标记了哪些软件包是为了满足依赖关系而被安装的,以及哪些是因为未使用而被删除的。
5.
aptitude
有一个(纯文本)交互式用户界面。
我个人只使用aptitude来进行命令行包管理(从不使用文本界面);我发现它的输出比apt-get/apt-cache更易读。
然而,如果aptitude在Ubuntu上不再是标准的话,那么在指南和教程中就没有其他选择了,只能使用apt-get。
(就个人而言,我对它在10.10版本中消失感到相当失望;尤其是考虑到aptitude相对于apt-get的改进主要在于可用性方面。我猜他们认为那些熟悉命令行的人知道如何恢复aptitude,而那些不使用命令行的人则不会在意...)
apt
代替这两个命令:https://itsfoss.com/apt-vs-apt-get-difference/ - tatsuaptitude why
非常方便,并且没有真正的等价物。 - Nathaniel M. Beaver