apt 和 apt-get 之間有什麼區別?

使用ubuntu的朋友必定會接觸一個命令就是apt-get 。
使用該工具安裝各類應用程序那叫一個爽。
在 Ubuntu 16.04 發行後,apt使用漸漸頻繁起來。前端

那麼,apt-get 與 apt 命令之間到底有什麼區別呢?ubuntu

若是它們有相似的命令結構,爲何還須要新的 apt 命令呢?網絡

是否 apt 真的比 apt-get 更好?編輯器

普通用戶應該使用新的 apt 命令仍是堅持舊有習慣繼續使用 apt-get 呢?工具

彭老師將在本文中解釋全部這些問題,咱們但願本文結束時,你將會有一個更清晰的瞭解。操作系統

1、 概念

apt 和 apt-get 之間的區別

1. Apt-get

Advanced Package Tool,又名apt-get,是一款適用於Unix和Linux系統的應用程序管理器。命令行

最初於1998年發佈,用於檢索應用程序並將其加載到Debian Linux系統。主要用於自動從互聯網的軟件倉庫中搜索、安裝、升級、卸載軟件或操做系統。3d

Apt-get成名的緣由之一在於其出色的解決軟件依賴關係的能力。其一般使用.deb-formatted文件,但通過修改後可使用apt-rpm處理紅帽的Package Manager(RPM)文件。code

Apt-get在Linux社區獲得普遍使用,成爲用來管理桌面、筆記本和網絡的重要工具。隨着Linux在企業中的普及,Windows和Mac用戶瞭解如何使用apt-get加載應用程序有必定的好處。orm

另外,隨着單片機設備如Raspberry Pi的熱度增長,apt-get在這些平臺上是比較便捷的應用加載方式。若是你想要加載的應用須要程序庫或另外一個應用程序才能正常工做,apt-get會幫你找到並加載所需的程序庫或應用代碼。

apt-get當前的穩定版本是1.0.9.2,在2014年10月發佈。

使用apt-get的主流Linux系統包括Debian和Ubuntu變異版本。大多數狀況下,從命令行運行該工具。桌面上有幾個圖形前端可使用,包括Synaptic Package Manager、Ubuntu Software Center、Aptitude和Kpackage。

Raspberry Pi和Beaglebone Black nanoLinux版用戶能夠很容易地使用apt-get加載程序,由於這些系統一般來自Ubuntu或Debian代碼。是debian,ubuntu發行版的包管理工具,與紅帽中的yum工具很是相似。

apt-get命令通常須要root權限執行,因此通常跟着sudo命令。

2. Apt

apt 命令行實用程序於2014年推出第一個穩定版本,用於 Debian 發行版 .deb 軟件包安裝。它最初在不穩定的Debian版本中使用,而後在Debian 8中成爲標準。

在 Ubuntu 16.04 發行後,apt 開始流行,並以某種方式取代了 apt-get 。

隨着 apt install package 命令的使用頻率和廣泛性逐步超過 apt-get install package,愈來愈多的其它 Linux 發行版也開始遵循 Ubuntu 的腳步,開始鼓勵用戶使用 apt 而不是 apt-get。

大多數人不瞭解 apt 和 apt-get 之間的區別,而且常常在使用一個或另外一個時感到困惑。

二者都是開源命令行工具,用於管理軟件包,例如安裝,更新,升級和刪除。

可是,它們之間仍然存在一些差別。

讓咱們看一些替代 apt-get 的 apt 命令,要查看這些命令,能夠鍵入 apt help 或經過在終端中鍵入 apt man 來訪問apt 手冊頁。它將顯示與apt 相關的全部信息。
apt help

2、 apt-get和apt之間的區別

apt 和 apt-get 之間的第一個區別是命令自己。
例如,若是要使用 apt-get update 更新系統存儲庫索引,則能夠運行:

#apt-get update

使用 apt 則輸入命令:

#apt update

apt update 命令不只更新存儲庫索引,還告知存儲庫中是否可用軟件以及有多少新版本可用。

1. 命令對比

apt-get apt 功能
apt-get apt 安裝軟件包
apt-get remove apt remove 刪除軟件包
apt-get remove apt remove 更換全部包
apt-get purge aptpurge 移除軟件包及配置文件
apt-get upgrade apt upgrade 更新全部軟件包(自動處理依賴項)
apt-get autoremove apt autoremove 自動刪除不須要的包
apt-get dist-upgrade apt full-upgrade 在升級軟件包時自動處理依賴關係
apt-cache search apt search 搜索應用程序
apt-cache show apt show 顯示裝細節
  • 刪除沒必要要的依賴apt-get autoremoveapt autoremove刪除具備相關配置的軟件包apt-get purgeapt purge

  • 在上表中,若是將 apt-get 替換爲 apt,則全部命令都相同,除了 apt upgrade 命令。
    舊的 apt-get upgrade 命令更新系統中當前存在的全部軟件包,它不會在系統上安裝或刪除現有軟件包。
    新的 apt upgrade 命令將安裝做爲可升級軟件包的依賴項添加的軟件包。儘管相似於 apt-get 升級,但它也不會刪除之前安裝的軟件包。

  • apt show 命令以字母順序打印輸出,並隱藏 apt-cache show命令顯示的不過重要的信息。

  • apt 和 apt-get 之間的區別不只限於命令,新的 apt 命令中已添加了另外一個視覺功能,以使最終用戶滿意。每當在使用 apt 升級,apt 徹底升級或 apt dist升級時更新軟件包時,都會看到一個進度條,通知該過程的進度。

apt install* 當使用 apt remove 或 apt purge 刪除軟件包時,它也會出現。

  • 此外,若是咱們運行 apt list --upgradeable,它還會顯示一些顏色,以提供有關存儲庫提供最新版本的軟件包的清晰概述。
    apt list --upgradeable

2. 兩個新命令

除了替換命令外,apt 引入了兩個新命令:

新的apt命令 功能
apt list 列出包含條件的包(已安裝,可升級等)
apt edit-sources 編輯源列表
  1. apt list
    –當 apt list 命令與–installed或–upgradeable一塊兒使用時,它將列出已安裝,可安裝或須要升級的軟件包。
  2. apt edit-sources
    –使用此命令時,它將在編輯器中打開sources.list文件進行編輯。
    apt-get 仍然不能徹底被 apt 取代,並且我認爲它永遠不會被徹底終止。你可能正在考慮應該選擇什麼:apt 或 apt-get。在我看來,選擇apt 是值得的,由於它提供了軟件包管理的全部必需功能,而且更快,更友好且易於使用。

3、使用apt仍是apt-get?

目前尚未任何 Linux 發行版官方放出 apt-get 將被停用的消息,至少它還有比 apt 更多、更細化的操做功能。對於低級操做,仍然須要 apt-get。

既然兩個命令都有用,那麼我該使用 apt 仍是 apt-get 呢?

做爲一個常規 Linux 用戶,系統極客建議你們儘快適應並開始首先使用 apt。
不只由於廣大 Linux 發行商都在推薦 apt,更主要的仍是它提供了 Linux 包管理的必要選項。

最重要的是,apt 命令選項更少更易記,所以也更易用,因此沒理由繼續堅持 apt-get。

最後給你們提供兩點使用上的建議:

  • apt 能夠看做 apt-get 和 apt-cache 命令的子集, 能夠爲包管理提供必要的命令選項。
  • apt-get 雖然沒被棄用,但做爲普通用戶,仍是應該首先使用 apt。

更多Linux知識請關注 公衆號:一口Linux

相關文章
相關標籤/搜索