apt 和 apt-get 有什么区别?

nik*_*k90 653 apt

我阅读了aptSoftpedia 中添加到1.0的新花式进度条以及如何在此处启用它。但是在运行时sudo apt-get update,我没有看到花哨的进度条。再次阅读第二个链接时,该解决方案明确要求您使用sudo apt update.

因此,我的问题是之间的差异aptapt-get。我以为他们是一回事。

小智 555

它们是Trusty (14.04)及更高版本中提供的非常相似的命令行工具。 apt-getapt-cache最常用的命令在apt.

apt-get可以被认为是底层和“后端”,并支持其他基于 APT 的工具。apt是为最终用户(人类)设计的,其输出可能会在不同版本之间发生变化。

来自 apt(8) 的注释:

The `apt` command is meant to be pleasant for end users and does not need
       to be backward compatible like apt-get(8).
Run Code Online (Sandbox Code Playgroud)

看看这篇文章,了解有关新工具的更多信息:

上述链接的概要(有更正*):

这个版本的大新闻是我们包含了一个新的“apt”二进制文件,它结合了 apt-get 和 apt-cache 中最常用的命令。这些命令与 apt-get/apt-cache 对应的命令相同,但配置选项略有不同。

目前 apt 二进制文件支持以下命令:

  • 清单:这是类似的dpkg list,可以与像标志一起使用 --installed--upgradable
  • search : 工作原理类似,apt-cache search但按字母顺序排序。
  • show:工作原理类似,apt-cache show但隐藏了一些人们不太可能关心的细节(如哈希)。完整的记录仍然可以通过apt-cache show当然获得。
  • update:就像apt-get update启用颜色输出的常规一样,但apt update也显示可升级包的数量(如果有)。
  • install,remove : 在 dpkg 运行期间添加进度输出。
  • 升级:同apt-get upgrade --with-new-pkgs*
  • full-upgrade:更有意义的名称dist-upgrade
  • 编辑源sources.list使用编辑$EDITOR
  • 政策:工作就像apt-cache policy

您可以通过以下方式启用/禁用安装进度 [bar]:

# echo 'Dpkg::Progress-Fancy "1";' > /etc/apt/apt.conf.d/99progressbar
Run Code Online (Sandbox Code Playgroud)

  • 值得一提的是,从 16.04 开始,默认情况下 apt 不会保存下载的包,而 apt-get 会保存。 (6认同)
  • 只是好奇 - apt upgrade 不等同于'upgrade --with-new-pkgs'(而不是IIRC默认执行并删除的dist-upgrade)? (3认同)

小智 109

我写这篇文章,apt手册页(我的apt软件包版本:1.0.1ubuntu2.8)包括以下部分:

DIFFERENCES TO APT-GET(8)
   The apt command is meant to be pleasant for end users and does not need
   to be backward compatible like apt-get(8). Therefore some options are
   different:

   ·   The option DPkg::Progress-Fancy is enabled.
   ·   The option APT::Color is enabled.
   ·   A new list command is available similar to dpkg --list.
   ·   The option upgrade has --with-new-pkgs enabled by default.
Run Code Online (Sandbox Code Playgroud)

  • RTFM 奖励积分 (7认同)
  • 这是正确的答案(对于 Debian 和 Ubuntu 以及其他衍生产品,如 Mint)。特别是,运行 `sudo apt upgrade` 将执行与 `sudo apt-get upgrade --with-new-pkgs` 相同的操作。它会安装新的包,但*与*`sudo apt-get dist-upgrade`不同,它不会删除旧的包(当然,除了安装*相同*包的新版本时——其中`sudo apt-get升级`也可以)。[`man apt`](http://manpages.ubuntu.com/manpages/xenial/en/man8/apt.8.html) 进一步证实了这个答案是正确的。 (3认同)

abh*_*hek 49

有多种工具可以与Advanced Packaging Tool (APT)交互,并允许您在基于 Debian 的 Linux 发行版中安装、删除和管理软件包。apt-get是一种广受欢迎的命令行工具。另一个流行的工具是具有 GUI 和命令行选项的Aptitude

如果您已经使用apt-get的命令,你可能会遇到一些类似的命令如apt-cacheapt-config等这是哪里出了问题就出现了。

你看,这些命令太低级了,而且它们有很多普通 Linux 用户可能从未使用过的功能。另一方面,最常用的包管理命令分散在apt-getapt-cacheapt-config

apt命令已被引入来解决这个问题。apt包含来自 的一些最广泛使用的功能apt-getapt-cacheapt-config撇开晦涩和很少使用的功能。

使用apt,您不必费力地从apt-getapt-cacheapt-configapt更加结构化,并为您提供管理包所需的必要选项。

底线: apt = 最常用的命令选项apt-getapt-cacheapt-config

我已经详细写过apt 和 apt-get 之间区别


mit*_*mit 19

APT 是一个庞大的项目,其原始计划包括图形界面。它基于一个包含核心应用程序的库,而 apt-get 是第一个前端——基于命令行——是在项目中开发的。

apt是 APT 提供的第二个基于命令行的前端,它克服了apt-get.

引用自:

https://debian-handbook.info/browse/stable/sect.apt-get.html