有時我們發現我們需要知道是否有 程序或軟件包已安裝 是否在系統中。 問題在於,由於適用於不同GNU / Linux發行版的軟件包管理器數量眾多,對於新手來說,這可能有些複雜,因為他們必須記住每種情況下的不同命令或工具及其選項,以便我們展示是否包在我們的系統中。
例如,如果我們使用Arch Linux及其衍生版本, 我們正在尋找的工具是軟件包管理器 帶有-Qs選項的pacman以及我們要檢查的軟件包的名稱。 另一方面,如果它是基於RPM軟件包的發行版,則可以使用rpm -qa工具列出所有已安裝的軟件包,並藉助管道將輸出管道傳輸到grep軟件包名稱以過濾結果。 對於Debian和衍生產品,可以使用dpkg -s,後跟要查詢的軟件包名稱,等等。
您可能會認為這是任何發行版的通用解決方案,事實是它可以工作到一定程度,因為並非在所有 哪個搜索 因此,如果我們尋找某些軟件包,似乎似乎沒有找到它們,也沒有將它們安裝在系統中,但它們似乎...例如,如果我們查看是否安裝了與之配套的nano文本編輯器,可以清楚地看到它是否存在,但是如果我們使用LibreOffice對其進行測試,情況會有所不同:
which nano which libreoffice
兩者的結果將有很大的不同,因為在第一種情況下,它將指示二進製文件(/ bin / nano)的路徑,而在第二種情況下,即使安裝了LibreOffice,也不會向我們顯示任何輸出。 這就是我的意思。 因此,最後我們別無選擇,只能學習 不同的命令和選項 對於發行版,我們正在使用:
相關文章:
解決Ubuntu和Linux Mint中啟動問題的解決方案
pacman -Qs nombre-paquete rpm -qa | grep nombre-paquete dpkg -s nombre-paquete
您好,對於使用.deb的發行版(Debian及其衍生版本),您可以使用...
dpkg -l | grep package_name_or_part_of_the_part
請注意第一列,如果出現“ ii”,則表示它是已安裝的軟件包,可能會出現其他字母組合(man dpkg)。
換一種方式,但是您必須知道軟件包的確切名稱是...
dpkg -s package_name
...提供了有關它的非常詳細的信息。
問候