當你安裝了 Ubuntu 並想好好用一用。但在將來某個時候,你肯定會遇到忘記曾經安裝了那些軟體包。
這個是完全正常。沒有人要求你把系統裡所有已安裝的軟體包都記住。但是問題是,如何才能知道已經安裝了哪些軟體包?如何檢視安裝過的軟體包呢?
如果你經常用 apt 命令,你可能覺得會有個命令像 apt
一樣可以列出已安裝的軟體包。不算全錯。
apt-get 命令 沒有類似列出已安裝軟體包的簡單的選項,但是 apt
有一個這樣的命令:
apt list --installed
這個會顯示使用 apt
命令安裝的所有的軟體包。同時也會包含由於依賴而被安裝的軟體包。也就是說不僅會包含你曾經安裝的程式,而且會包含大量庫檔案和間接安裝的軟體包。
用 atp 命令列出顯示已安裝的軟體包
由於列出出來的已安裝的軟體包太多,用 grep
過濾特定的軟體包是一個比較好的辦法。
apt list --installed | grep program_name
如上命令也可以檢索出使用 .deb 軟體包檔案安裝的軟體。是不是很酷?
如果你閱讀過 apt 與 apt-get 對比的文章,你可能已經知道 apt
和 apt-get
命令都是基於 dpkg。也就是說用 dpkg
命令可以列出 Debian 系統的所有已經安裝的軟體包。
dpkg-query -l
你可以用 grep
命令檢索指定的軟體包。
!
用 dpkg 命令列出顯示已經安裝的軟體包
現在你可以搞定列出 Debian 的軟體包管理器安裝的應用了。那 Snap 和 Flatpak 這個兩種應用呢?如何列出它們?因為它們不能被 apt
和 dpkg
存取。
顯示系統裡所有已經安裝的 Snap 軟體包,可以這個命令:
snap list
Snap 可以用綠色勾號標出哪個應用來自經過認證的發佈者。
列出已經安裝的 Snap 軟體包
顯示系統裡所有已安裝的 Flatpak 軟體包,可以用這個命令:
flatpak list
讓我來個彙總:
用 apt
命令顯示已安裝軟體包:
apt list –installed
用 dpkg
命令顯示已安裝軟體包:
dpkg-query -l
列出系統裡 Snap 已安裝軟體包:
snap list
列出系統裡 Flatpak 已安裝軟體包:
flatpak list
現在你已經看過以字母順序列出的已經安裝軟體包了。如何顯示最近已經安裝的軟體包?
幸運的是,Linux 系統儲存了所有發生事件的紀錄檔。你可以參考最近安裝軟體包的紀錄檔。
有兩個方法可以來做。用 dpkg
命令的紀錄檔或者 apt
命令的紀錄檔。
你僅僅需要用 grep
命令過濾已經安裝的軟體包紀錄檔。
grep " install " /var/log/dpkg.log
這會顯示所有的軟體安裝包,其中包括最近安裝的過程中所依賴的軟體包。
2019-02-12 12:41:42 install ubuntu-make:all 16.11.1ubuntu12019-02-13 21:03:02 install xdg-desktop-portal:amd64 0.11-12019-02-13 21:03:02 install libostree-1-1:amd64 2018.8-0ubuntu0.12019-02-13 21:03:02 install flatpak:amd64 1.0.6-0ubuntu0.12019-02-13 21:03:02 install xdg-desktop-portal-gtk:amd64 0.11-12019-02-14 11:49:10 install qml-module-qtquick-window2:amd64 5.9.5-0ubuntu1.12019-02-14 11:49:10 install qml-module-qtquick2:amd64 5.9.5-0ubuntu1.12019-02-14 11:49:10 install qml-module-qtgraphicaleffects:amd64 5.9.5-0ubuntu1
你也可以檢視 apt
歷史命令紀錄檔。這個僅會顯示用 apt
命令安裝的的程式。但不會顯示被依賴安裝的軟體包,詳細的紀錄檔在紀錄檔裡可以看到。有時你只是想看看對吧?
grep " install " /var/log/apt/history.log
具體的顯示如下:
Commandline: apt install pintaCommandline: apt install pintaCommandline: apt install tmuxCommandline: apt install terminatorCommandline: apt install moreutilsCommandline: apt install ubuntu-makeCommandline: apt install flatpakCommandline: apt install cool-retro-termCommandline: apt install ubuntu-software
顯示最近已安裝的軟體包
apt
的歷史紀錄檔非常有用。因為他顯示了什麼時候執行了 apt
命令,哪個使用者執行的命令以及安裝的軟體包名。
如果你覺得終端和命令列互動不友好,還有一個方法可以檢視系統的程式名。
可以開啟軟體中心,然後點選已安裝標籤。你可以看到系統上已經安裝的程式包名
在軟體中心顯示已安裝的軟體包
這個不會顯示庫和其他命令列的東西,有可能你也不想看到它們,因為你的大量互動都是在 GUI。此外,你也可以用 Synaptic 軟體包管理器。
我希望這個簡易的教學可以幫你檢視 Ubuntu 和基於 Debian 的發行版的已安裝軟體包。
如果你對本文有什麼問題或建議,請在下面留言。