Ubuntu中apt與apt-get命令的區別
Ubuntu 16.04 釋出時,一個引人注目的新特性便是 apt 命令的引入。其實早在 2014 年,apt 命令就已經發布了第一個穩定版,只是直到 2016 年的 Ubuntu 16.04 系統釋出時才開始引人關注。
隨著 apt install package 命令的使用頻率和普遍性逐步超過 apt-get install package,越來越多的其它 Linux 發行版也開始遵循 Ubuntu 的腳步,開始鼓勵使用者使用 apt 而不是 apt-get。
那麼,apt-get 與 apt 命令之間到底有什麼區別呢?如果它們有類似的命令結構,為什麼還需要新的 apt 命令呢?是否 apt 真的比 apt-get 更好?普通使用者應該使用新的 apt 命令還是堅持舊有習慣繼續使用 apt-get 呢?
系統極客將在本文中解釋所有這些問題,我們希望本文結束時,你將會有一個更清晰的瞭解。
apt與apt-get
在開始對比 apt 與 apt-get 命令的區別之前,我們先來看看這兩個命令的背景,以及它們要試圖達到的目的。
Debian 作為 Ubuntu、Linux Mint 和 elementary OS 等 Linux 作業系統的母板,其具有強健的「包管理」系統,它的每個元件和應用程式都內建在系統中安裝的軟體包中。Debian 使用一套名為 Advanced Packaging Tool(APT)的工具來管理這種包系統,不過請不要把它與 apt 命令混淆,它們之間是其實不是同一個東西。
在基於 Debian 的 Linux 發行版中,有各種工具可以與 APT 進行互動,以方便使用者安裝、刪除和管理的軟體包。apt-get 便是其中一款廣受歡迎的命令列工具,另外一款較為流行的是 Aptitude 這一命令列與 GUI 兼顧的小工具。
如果你已閱讀過我們的 apt-get 命令指南,可能已經遇到過許多類似的命令,如apt-cache、apt-config 等。如你所見,這些命令都比較低階又包含眾多功能,普通的 Linux 使用者也許永遠都不會使用到。換種說法來說,就是最常用的 Linux 包管理命令都被分散在了 apt-get、apt-cache 和 apt-config 這三條命令當中。
apt 命令的引入就是為了解決命令過於分散的問題,它包括了 apt-get 命令出現以來使用最廣泛的功能選項,以及 apt-cache 和 apt-config 命令中很少用到的功能。
在使用 apt 命令時,使用者不必再由 apt-get 轉到 apt-cache 或 apt-config,而且 apt 更加結構化,併為使用者提供了管理軟體包所需的必要選項。
簡單來說就是:apt = apt-get、apt-cache 和 apt-config 中最常用命令選項的集合。
apt與apt-get之間的區別
通過 apt 命令,使用者可以在同一地方集中得到所有必要的工具,apt 的主要目的是提供一種以「讓終端使用者滿意」的方式來處理 Linux 軟體包的有效方式。
apt 具有更精減但足夠的命令選項,而且引數選項的組織方式更為有效。除此之外,它預設啟用的幾個特性對終端使用者也非常有幫助。例如,可以在使用 apt 命令安裝或刪除程式時看到進度條。
apt 還會在更新儲存庫資料庫時提示使用者可升級的軟體包個數。
如果你使用 apt 的其它命令選項,也可以實現與使用 apt-get 時相同的操作。
apt和apt-get命令之間的區別
雖然 apt 與 apt-get 有一些類似的命令選項,但它並不能完全向下相容 apt-get 命令。也就是說,可以用 apt 替換部分 apt-get 系列命令,但不是全部。
apt 命令 | 取代的命令 | 命令的功能 |
---|---|---|
apt install | apt-get install | 安裝軟體包 |
apt remove | apt-get remove | 移除軟體包 |
apt purge | apt-get purge | 移除軟體包及配置檔案 |
apt update | apt-get update | 重新整理儲存庫索引 |
apt upgrade | apt-get upgrade | 升級所有可升級的軟體包 |
apt autoremove | apt-get autoremove | 自動刪除不需要的包 |
apt full-upgrade | apt-get dist-upgrade | 在升級軟體包時自動處理依賴關係 |
apt search | apt-cache search | 搜尋應用程式 |
apt show | apt-cache show | 顯示安裝細節 |
當然,apt 還有一些自己的命令:
新的apt命令 | 命令的功能 |
---|---|
apt list | 列出包含條件的包(已安裝,可升級等) |
apt edit-sources | 編輯源列表 |
需要大家注意的是:apt 命令也還在不斷髮展, 因此,你可能會在將來的版本中看到新的選項。
apt-get已棄用? |
---|
目前還沒有任何 Linux 發行版官方放出 apt-get 將被停用的訊息,至少它還有比 apt 更多、更細化的操作功能。對於低階操作,仍然需要 apt-get。 |
我應該使用apt還是apt-get? |
---|
既然兩個命令都有用,那麼我該使用 apt 還是 apt-get 呢?作為一個常規 Linux 使用者,系統極客建議大家儘快適應並開始首先使用 apt。不僅因為廣大 Linux 發行商都在推薦 apt,更主要的還是它提供了 Linux 包管理的必要選項。 最重要的是,apt 命令選項更少更易記,因此也更易用,所以沒理由繼續堅持 apt-get。 |
小結
最後結大家提供兩點使用上的建議:
apt 可以看作 apt-get 和 apt-cache 命令的子集, 可以為包管理提供必要的命令選項。
apt-get 雖然沒被棄用,但作為普通使用者,還是應該首先使用 apt。