如何在 Debian、Ubuntu 中使用 apt-cache 命令
就像其他 Linux 命令一樣,apt-cache
也有一些可用的選項,你可以隨時參考它的手冊頁來了解這些選項。
然而,你可能並不需要使用所有的選項。這就是為什麼我在本教程中只向你展示 apt-cache
命令中最常見和最有用的例子。
始終更新
更新本地 APT 緩存以與遠程倉庫同步是一個好主意。如何做到這一點呢?你可以使用命令:
sudo apt update
搜索軟體包
apt-cache
命令最常見的用途是查找軟體包。你可以使用一個正則表達式來搜索本地 APT 緩存中的包。
apt-cache search package_name
默認情況下,它會在軟體包的名稱和描述中查找搜索關鍵詞。它按字母順序顯示匹配的軟體包及其簡短的描述。
你也可以縮小搜索範圍,只在軟體包名稱中查找搜索詞。
apt-cache search --names-only package_name
如果你想知道所有匹配軟體包的完整細節,你可以使用 --full
標誌。
獲取詳細的包裝信息
如果你知道確切的軟體包名稱(或者你已經成功地通過搜索找到了它),你可以得到軟體包的詳細元數據信息。
apt-cache show package_name
你可以看到軟體包元數據中的所有細節,比如名稱、版本、開發者、維護者、倉庫、長短描述、軟體包大小甚至是校驗和。
還有一個選項 showpkg
可以顯示軟體包的名稱、版本、正向和反向依賴關係等信息。
apt-cache showpkg package_name
apt-cache 的策略
這是 apt-cache
命令中很少使用的一個選項。policy
選項可以幫助你調試與 preference 文件相關的問題。
如果你指定了軟體包的名稱,它將顯示該軟體包是否已經安裝,在哪個版本的倉庫中可用,以及它的優先順序。
默認情況下,每個已安裝的軟體包版本的優先順序為 100,未安裝的軟體包的優先順序為 500。同一軟體包可能有多個不同優先順序的版本。APT 會安裝優先順序較高的版本,除非安裝的版本較新。
如果不理解這個部分,也沒關係。對於一個普通的 Linux 用戶來說,會極少糾結於這麼深的軟體包管理知識。
檢查軟體包的依賴關係和反向依賴關係。
你可以在安裝之前(甚至在安裝之後)檢查一個包的依賴關係。它還會顯示所有可能滿足依賴關係的軟體包。
apt-cache depends package
你也可以通過 apt-cahce
檢查反向依賴關係來檢查哪些包是依賴於某個包的。
坦白說,看到 Ansible 這樣的 DevOps 工具對 Cowsay 這樣有趣的 Linux 命令有依賴性,我也很驚訝。我想可能是因為在安裝 Ansible之後,它會在節點上顯示一些信息。
檢查未滿足的依賴性
你可能會被 Ubuntu 中未滿足的依賴問題所困擾,其他 Linux 也有類似問題。apt-cache
命令提供了一個選項來檢查系統中各種可用軟體包的所有未滿足的依賴關係。
apt-cache unmet
結論
你可以用 apt-cache
命令列出所有可用的軟體包。輸出結果會很龐大,所以我建議將其與 wc 命令 結合起來,得到可用軟體包的總數,就像這樣:
apt-cache pkgnames | wc -l
你是否注意到你不需要成為 root 用戶就可以使用 apt-cache
命令?
較新的 apt 命令也有一些與 apt-cache
命令相對應的功能選項。由於 apt
比較新,所以在腳本中還是首選使用 apt-get
及其相關的 apt-cache
等命令。
希望你覺得本教程對你有幫助。如果你對上面討論的任何一點有疑問或者有改進的建議,請在評論中告訴我。
via: https://itsfoss.com/apt-cache-command/
作者:Abhishek Prakash 選題:lujun9972 譯者:wxy 校對:wxy
本文轉載來自 Linux 中國: https://github.com/Linux-CN/archive