aptitude 是否仍然被认为优于 apt-get?

aptitude 是否仍然被认为优于 apt-get?

我第一次使用 Ubuntu 时,使用的aptitude是 ,它比 有一些明显的改进apt-get。我说apt-get现在已经“赶上”了aptitude,使用哪个都没什么区别,对吗(尽管最好选择其中一个并坚持使用)?

此外,由于aptitude将从默认 Ubuntu 安装中删除,每个人都是否应该恢复到apt-get,特别是在指导对 CLI 感兴趣的新用户时?

答案1

据我所知,在 10.04 中,aptitude 和 apt-get 之间的主要区别是:

  1. aptitude添加明确的每个包标志,指示包是否自动安装以满足依赖性:您可以操作这些标志(aptitude markautoaptitude unmarkauto)来改变 aptitude 处理包的方式。

    apt-get跟踪相同的信息,但不会明确显示。apt-mark可用于操作标志。

  2. aptitude每次删除已安装的软件包时都会提示删除未使用的软件包,而只有在使用或指定apt-get明确要求时才会执行此操作。apt-get autoremove--auto-remove

  3. aptitudeapt-get充当和中大多数功能的单一命令行前端apt-cache笔记:从 16.04 开始,有一个apt命令包含了最常用的命令apt-getapt-cache一些额外的功能。

  4. apt-cache的“搜索”相反,aptitude的“搜索”输出还显示软件包的安装/删除/清除状态(以及 aptitude 自己的状态标志)。此外,“安装”输出标记了哪些软件包正在安装以满足依赖性,哪些软件包正在被删除,因为未使用。

  5. aptitude具有(纯文本)交互式用户界面。

我个人仅将aptitude其用于命令行包管理(并且我从不使用文本 UI);我发现它的输出比apt-get/更具可读性apt-cache

但是,如果它不再是 Ubuntu 的标准,那么除了在说明和操作方法文档中aptitude使用之外别无选择。apt-get

(就我个人而言,我相当失望看到它在 10.10 中消失;特别是因为 aptitude 的改进apt-get主要是在可用性方面。我猜他们认为那些熟悉命令行的人知道如何恢复 aptitude,而那些不使用命令行的人不会关心......)

答案2

我想现在这已经是个人选择的问题了。我发现输入aptitude search比 更有意义apt-cache search,而且我喜欢它在搜索输出中告诉我安装了哪些软件包,而不必运行dpkg -l

答案3

以前的 apt-get 无法正确管理依赖项,因此即使在使用它们的包被卸载后,孤立的依赖项仍会保留在系统中 - 现在不再是这样,要删除孤立的依赖项,请使用

sudo apt-get autoremove

aptitude 始终能正确地完成这项工作并能更好地跟踪依赖关系,但现在两个包管理器都可以完成这项工作。

在 ubuntu 上最好使用 apt-get,因为它得到公司的支持和认可,在 debian 上我会使用 aptitude

答案4

我想说,根据我的个人经验,aptitude 和 apt-get 具有非常相似的功能。

想到的可能影响用户选择的主要区别是,aptitude 提供了 ncurses 界面,并且提供了方便的安全升级和完全升级选项。

我个人总是使用 apt-get,并建议新用户也使用 apt-get。正如您所说,默认情况下 aptitude 将从 Ubuntu 中删除,这似乎仍然是最好的建议。如果他们确实想使用 aptitude,他们需要知道如何使用 apt-get 来安装 aptitude :)

相关内容