ubuntu/debian 저장소에 설치된 모든 패키지 나열

ubuntu/debian 저장소에 설치된 모든 패키지 나열

모든 패키지를 나열하는 방법나는 설치했다외부 명령을 사용하지 않고 우분투/데비안의 일부 저장소에서 또는 aptitude같은 기본 명령 도 사용apt list --installed여기:

현재 저장소를 모두 나열합니다.

apt-cache policy | sed -n 's/.*o=\([^,]\+\).*/\1/p' | uniq

그리고여기,

for p in $(dpkg -l | awk '/ii/{ print $2 }'); do for i in $(apt-cache policy "$p" | awk '/Installed/{ print $2}'); do apt-cache policy "$p" | grep -A1 '\*\*\*\ '$i'' | if grep -q jessie; then echo $p; fi; done; done

후자가 해결책은 아니다. 왜냐하면 저자조차 그것이 그렇다고 인정하기 때문이다."아주 못생긴", 하지만 기본적인 도구만 사용하는 접근 방식은 좋습니다.

아니면 가장 좋은 방법은 일부 설치 로그를 awk구문 분석하는 스크립트를 작성하는 것입니까?apt

그런데 왜 궁금한가요? 현재 내 저장소는 모두 다음과 같습니다.

LP-PPA-myid,a=focal
cloudsmith/myid/repo,a=bullseye
Docker,a=bullseye
Google LLC,a=stable
Debian,a=oldstable
Debian,a=testing
Debian Backports,a=bullseye-backports
Debian,a=stable-security
Debian,a=stable

하지만 왜 Nodejs 저장소가 목록에 없는지 모르겠습니다.

$ apt-cache policy nodejs
nodejs:
  Installed: 16.18.1-deb-1nodesource1
  Candidate: 16.19.0-deb-1nodesource1
  Version table:
     16.19.0-deb-1nodesource1 500
        500 https://deb.nodesource.com/node_16.x bullseye/main amd64 Packages
 *** 16.18.1-deb-1nodesource1 100
        100 /var/lib/dpkg/status
     12.22.12~dfsg-1~deb11u1 500
        500 http://security.debian.org/debian-security bullseye-security/main amd64 Packages
     12.22.5~dfsg-2~11u1 500
        500 http://deb.debian.org/debian bullseye/main amd64 Packages

관련 정보