모든 패키지를 나열하는 방법나는 설치했다외부 명령을 사용하지 않고 우분투/데비안의 일부 저장소에서 또는 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