ubuntu / debianリポジトリにインストールされているすべてのパッケージを一覧表示する

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

関連情報