쿠분투를 사용하고 있습니다. 시스템에 설치된 패키지 목록을 가져오고 싶습니다. 특히 범주 필터 탭에서 범주별로 (예 : Muon Package Manager에서 볼 수있는) 패키지별로 정렬하고 싶습니다. 시각적 참조를 위해 다음 이미지에서 창의 왼쪽 부분입니다.
Muon 내부에는 File 메뉴에 설치된 패키지 목록을 내보내는 옵션이 있지만 일반 목록 만 내보내고 ( dpkg --get-selections
명령을 실행한다고 생각합니다 ) 내가 찾는 것이 아닙니다.
나는의 맨 페이지에서 볼려고 dpkg
, dpkg-query
, apt
그리고 apt-get
하지만 유용한 정보를 찾지 못했습니다.
내가 얻은 유일한 단서는 dpkg-query
상태 매뉴얼에서 일부 명령 옵션을 사용하여 출력을 정렬 할 수 있지만 범주별로 정렬하는 방법을 찾지 못했다는 것입니다.
실마리?
답변
실제로 dpkg-query
몇 가지 다른 도구를 사용하여이 작업을 수행 할 수 있습니다 .
dpkg-query -Wf='${package}\t${Section}\t${status}\n' | grep installed |
gawk '{print $2"\t"$1}' | sort
설명:
-
dpkg-query -Wf='${package}\t${section}\t${status}\n'
:이 명령은 모든 패키지 (-W
)를package name
<TAB>package section
<TAB> 로 나열합니다package status
. 로부터dpkg-query
매뉴얼 페이지-f, --showformat=format This option is used to specify the format of the output --show will produce. The format is a string that will be output for each package listed.
따라서이 명령만으로 다음과 같은 출력이 생성됩니다.
$ dpkg-query -Wf='${package}\t${Section}\t${status}\n' | head a2ps text install ok installed abiword editors install ok installed abiword-common editors install ok installed abiword-plugin-grammar editors install ok installed abiword-plugin-mathview editors install ok installed accountsservice admin install ok installed acl utils install ok installed acpi utils install ok installed acpi-support-base admin install ok installed acpid admin install ok installed
-
grep installed
: 상태가 패키지를 설명하는 행만 선택합니다installed
. -
gawk '{print $2"\t"$1}'
: gawk를 사용하여 관심있는 두 필드 (패키지 이름 및 섹션) 만 인쇄하고, 출력을보다 쉽게 읽고 정렬 할 수 있도록 섹션을 먼저 인쇄하고 패키지 이름을 두 번째로 인쇄하십시오. -
sort
섹션이 이제 첫 번째 필드이므로sort
패키지를 섹션별로 정렬하기에 간단 합니다.
최종 결과는 다음과 같습니다.
admin accountsservice
admin aptdaemon-data
editors libreoffice-impress
fonts fonts-telu
games enemylines3
games enemylines7
gnome cinnamon
libdevel libxmu-dev
libs libapt-pkg4.12
oldlibs hpijs
python python-gi-cairo