Archlinux/Pacman 列出已安裝的軟體包及其描述

Archlinux/Pacman 列出已安裝的軟體包及其描述

如何列出已安裝的軟體包(按使用者)並附有簡短說明?

當我搜尋要安裝的套件時:pacman -Ss zsh,我得到以下結果:
extra/zsh 5.7.1-1 [installed] A very advanced and programmable command interpreter (shell) for UNIX
我想使用類似 的東西得到相同的結果pacman -Qe

答案1

這些對我來說效果很快

 

這將提供 pacman -Qe 結果的完整資訊。它在 pacman -Qe 輸出的每一行執行 pacman -Qi

for line in "$(pacman -Qqe)"; do pacman -Qi $(echo "$line"); done

 

這將產生與您所做的循環相同的輸出,但無需在每行上進行 pacman 搜尋。使用管道和 perl 格式化上述命令的輸出

for line in "$(pacman -Qqe)"; do pacman -Qi $(echo "$line") ; done | perl -pe 's/ +/ /gm' | perl -pe 's/^(Groups +: )(.*)/$1($2)/gm' | perl -0777 -pe 's/^Name : (.*)\nVersion :(.*)\nDescription : ((?!None).*)?(?:.|\n)*?Groups :((?! \(None\)$)( )?.*)?(?:.|\n(?!Name))+/local\/$1$2$4\n    $3/gm' | grep -A1 --color -P "^[^\s]+"

 

與上面相同,但沒有在每個包名稱的開頭添加“local/”

for line in "$(pacman -Qqe)"; do pacman -Qi $(echo "$line") ; done | perl -pe 's/ +/ /gm' | perl -pe 's/^(Groups +: )(.*)/$1($2)/gm' | perl -0777 -pe 's/^Name : (.*)\nVersion :(.*)\nDescription : ((?!None).*)?(?:.|\n)*?Groups :((?! \(None\)$)( )?.*)?(?:.|\n(?!Name))+/$1$2$4\n    $3/gm' | grep -A1 --color -P "^[^\s]+"

答案2

該命令在同一行給出描述。

expac -H M '%-20n\t%10d' $(pacman -Qe)

它是由一些找到的命令組成的這裡在 Archwiki 中。

相關內容