Archlinux/Pacman listet installierte Pakete mit Beschreibung auf

Archlinux/Pacman listet installierte Pakete mit Beschreibung auf

Wie liste ich installierte Pakete (nach Benutzer) mit einer kurzen Beschreibung auf?

Wenn ich nach zu installierenden Paketen suche: pacman -Ss zsh, erhalte ich das folgende Ergebnis:
extra/zsh 5.7.1-1 [installed] A very advanced and programmable command interpreter (shell) for UNIX
Ich möchte dasselbe Ergebnis mit etwas wie erhalten pacman -Qe.

Antwort1

Diese funktionieren bei mir schnell

 

Dies gibt vollständige Informationen zu den Ergebnissen von pacman -Qe. Es führt pacman -Qi für jede Zeile der Ausgabe von pacman -Qe aus.

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

 

Dies erzeugt die gleiche Ausgabe wie die von Ihnen erstellte Schleife, jedoch ohne eine Pacman-Suche in jeder Zeile durchzuführen. Verwendet Pipes und Perl, um die Ausgabe des obigen Befehls zu formatieren

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]+"

 

Wie oben, jedoch wurde am Anfang jedes Paketnamens nicht „local/“ hinzugefügt.

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]+"

Antwort2

Dieser Befehl gibt die Beschreibung in der gleichen Zeile aus.

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

Es besteht aus einigen gefundenen BefehlenHierim Archwiki.

verwandte Informationen