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

 

그러면 각 줄에서 팩맨 검색을 수행하지 않고 만든 루프와 동일한 출력이 생성됩니다. 파이프와 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)

발견된 일부 명령으로 만들어졌습니다.여기아치위키에서.

관련 정보