Ubuntu 16.04 發(fā)布時(shí),一個(gè)引人注目的新特性便是 apt 命令的引入。其實(shí)早在 2014 年碴里,apt 命令就已經(jīng)發(fā)布了第一個(gè)穩(wěn)定版薄风,只是直到 2016 年的 Ubuntu 16.04 系統(tǒng)發(fā)布時(shí)才開始引人關(guān)注川尖。
隨著 apt install package 命令的使用頻率和普遍性逐步超過 apt-get install package翩概,越來越多的其它 Linux 發(fā)行版也開始遵循 Ubuntu 的腳步涉馁,開始鼓勵(lì)用戶使用 apt 而不是 apt-get汪疮。
那么峭火,apt-get 與 apt 命令之間到底有什么區(qū)別呢毁习?如果它們有類似的命令結(jié)構(gòu),為什么還需要新的 apt 命令呢卖丸?是否 apt 真的比 apt-get 更好纺且?普通用戶應(yīng)該使用新的 apt 命令還是堅(jiān)持舊有習(xí)慣繼續(xù)使用 apt-get 呢?
系統(tǒng)極客將在本文中解釋所有這些問題稍浆,我們希望本文結(jié)束時(shí)载碌,你將會有一個(gè)更清晰的了解。
apt與apt-get
在開始對比 apt 與 apt-get 命令的區(qū)別之前衅枫,我們先來看看這兩個(gè)命令的背景嫁艇,以及它們要試圖達(dá)到的目的。
Debian 作為 Ubuntu弦撩、Linux Mint 和 elementary OS 等 Linux 操作系統(tǒng)的母板步咪,其具有強(qiáng)健的「包管理」系統(tǒng),它的每個(gè)組件和應(yīng)用程序都內(nèi)置在系統(tǒng)中安裝的軟件包中孤钦。Debian 使用一套名為 Advanced Packaging Tool(APT)的工具來管理這種包系統(tǒng)歧斟,不過請不要把它與 apt 命令混淆,它們之間是其實(shí)不是同一個(gè)東西偏形。
在基于 Debian 的 Linux 發(fā)行版中静袖,有各種工具可以與 APT 進(jìn)行交互,以方便用戶安裝俊扭、刪除和管理的軟件包队橙。apt-get 便是其中一款廣受歡迎的命令行工具,另外一款較為流行的是 Aptitude 這一命令行與 GUI 兼顧的小工具萨惑。
如果你已閱讀過我們的 apt-get 命令指南捐康,可能已經(jīng)遇到過許多類似的命令,如apt-cache庸蔼、apt-config 等解总。如你所見,這些命令都比較低級又包含眾多功能姐仅,普通的 Linux 用戶也許永遠(yuǎn)都不會使用到花枫。換種說法來說,就是最常用的 Linux 包管理命令都被分散在了 apt-get掏膏、apt-cache 和 apt-config 這三條命令當(dāng)中劳翰。
apt 命令的引入就是為了解決命令過于分散的問題,它包括了 apt-get 命令出現(xiàn)以來使用最廣泛的功能選項(xiàng)馒疹,以及 apt-cache 和 apt-config 命令中很少用到的功能佳簸。
在使用 apt 命令時(shí),用戶不必再由 apt-get 轉(zhuǎn)到 apt-cache 或 apt-config颖变,而且 apt 更加結(jié)構(gòu)化生均,并為用戶提供了管理軟件包所需的必要選項(xiàng)听想。
簡單來說就是:apt = apt-get、apt-cache 和 apt-config 中最常用命令選項(xiàng)的集合疯特。
apt與apt-get之間的區(qū)別
通過 apt 命令哗魂,用戶可以在同一地方集中得到所有必要的工具,apt 的主要目的是提供一種以「讓終端用戶滿意」的方式來處理 Linux 軟件包的有效方式漓雅。
apt 具有更精減但足夠的命令選項(xiàng)录别,而且參數(shù)選項(xiàng)的組織方式更為有效。除此之外邻吞,它默認(rèn)啟用的幾個(gè)特性對最終用戶也非常有幫助组题。例如,可以在使用 apt 命令安裝或刪除程序時(shí)看到進(jìn)度條抱冷。
[圖片上傳失敗...(image-d35da3-1650454948058)]
apt 還會在更新存儲庫數(shù)據(jù)庫時(shí)提示用戶可升級的軟件包個(gè)數(shù)崔列。
[圖片上傳失敗...(image-1ab6e1-1650454948057)]
如果你使用 apt 的其它命令選項(xiàng),也可以實(shí)現(xiàn)與使用 apt-get 時(shí)相同的操作旺遮。
apt和apt-get命令之間的區(qū)別
雖然 apt 與 apt-get 有一些類似的命令選項(xiàng)赵讯,但它并不能完全向下兼容 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 | 在升級軟件包時(shí)自動處理依賴關(guān)系 |
| apt search | apt-cache search | 搜索應(yīng)用程序 |
| apt show | apt-cache show | 顯示裝細(xì)節(jié) |
當(dāng)然鸣剪,apt 還有一些自己的命令:
| 新的apt命令 | 命令的功能 |
| apt list | 列出包含條件的包(已安裝组底,可升級等) |
| apt edit-sources | 編輯源列表 |
需要大家注意的是:apt 命令也還在不斷發(fā)展, 因此筐骇,你可能會在將來的版本中看到新的選項(xiàng)债鸡。
apt-get已棄用?
目前還沒有任何 Linux 發(fā)行版官方放出 apt-get 將被停用的消息铛纬,至少它還有比 apt 更多厌均、更細(xì)化的操作功能。對于低級操作告唆,仍然需要 apt-get莫秆。
我應(yīng)該使用apt還是apt-get?
既然兩個(gè)命令都有用悔详,那么我該使用 apt 還是 apt-get 呢?作為一個(gè)常規(guī) Linux 用戶惹挟,系統(tǒng)極客建議大家盡快適應(yīng)并開始首先使用 apt茄螃。不僅因?yàn)閺V大 Linux 發(fā)行商都在推薦 apt,更主要的還是它提供了 Linux 包管理的必要選項(xiàng)连锯。
最重要的是归苍,apt 命令選項(xiàng)更少更易記用狱,因此也更易用,所以沒理由繼續(xù)堅(jiān)持 apt-get拼弃。
小結(jié)
最后結(jié)大家提供兩點(diǎn)使用上的建議:
- apt 可以看作 apt-get 和 apt-cache 命令的子集, 可以為包管理提供必要的命令選項(xiàng)夏伊。
- apt-get 雖然沒被棄用,但作為普通用戶吻氧,還是應(yīng)該首先使用 apt溺忧。