您好,登錄后才能下訂單哦!
Ubuntu中apt-cache命令如何使用,很多新手對此不是很清楚,為了幫助大家解決這個難題,下面小編將為大家詳細講解,有這方面需求的人可以來學習下,希望你能有所收獲。
APT 包管理器工作在軟件包元數據的本地緩存上。元數據通常由包名、版本、描述、依賴關系、倉庫和開發者等信息組成。通過 apt-cache
命令,你可以查詢這個本地 APT 緩存并獲得相關信息。
你可以搜索一個包的可用性、它的版本號、它的依賴關系等等。我將通過實例告訴你如何使用 apt-cache
命令。
APT 緩存的位置是 /var/lib/apt/lists/
目錄。緩存哪些倉庫元數據取決于你的源列表中 /etc/apt/sources.list
文件中添加的倉庫,以及位于 /etc/apt/sources.list.d
目錄下的額外倉庫文件。
令人驚訝的是,apt-cache
并不能清除 APT 緩存。為此,你必須使用 apt-get clean 命令。
不用說,APT 打包系統是在 Debian 和基于 Debian 的 Linux 發行版上使用的,比如 Ubuntu、Linux Mint、Elementary OS 等。你不能在 Arch 或 Fedora 上使用它。
就像其他 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
命令中很少使用的一個選項。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
等命令。
看完上述內容是否對您有幫助呢?如果還想對相關知識有進一步的了解或閱讀更多相關文章,請關注億速云行業資訊頻道,感謝您對億速云的支持。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。