Ubuntu

在 Ubuntu Linux 中,如何列出從“universe”儲存庫安裝的軟體包?

  • October 24, 2017

在 Ubuntu 10.04 LTS 伺服器上,我想列出已安裝的軟體包並查看它們來自哪個儲存庫。

列出已安裝的包很容易,但它不包括儲存庫的名稱(例如“main”或“universe”)。而且此資訊不在 中/var/lib/dpkg/status,因此dpkg-query也不顯示。

我想獲得一份“不受支持”軟體的列表——即不是來自“主”儲存庫的軟體,並且 Ubuntu 不保證對其進行安全更新。

注意:這是一個伺服器。它沒有安裝 X、GNOME 或 KDE。

好的,我想出瞭如何做到這一點:

aptitude search "~i" -F "%s# %p"

當然可以輕鬆地從“宇宙”儲存庫中查找項目:

aptitude search "~i" -F "%s# %p" | grep universe

您可以為 dpkg 命令的輸出提供自定義格式(使用 -f 選項)。嘗試這樣的事情,使用 Origin 變數:

dpkg-query -f='${Package} ${Version}\t${Origin}\n' --get-selections

有關此頁面上的格式化參數的更多資訊: http ://www.tin.org/bin/man.cgi?section=1&topic=dpkg-query

預設格式字元串是“ $ {Package}\t $ {Version}\n"。實際上,也可以請求在狀態文件中找到的所有其他欄位(即使用者定義的欄位)。它們將按原樣列印,但不會對其進行轉換或錯誤檢查. 要獲取 dpkg 維護者的名稱和安裝的版本,您可以執行:

dpkg-查詢 -W -f=’ $ {Package} $ {版本}\t${維護者}\n’ dpkg

引用自:https://serverfault.com/questions/138546