Ubuntuにインストールされているパッケージのリストとパッケージのバージョンを取得するPythonコードはありますか?私はPythonコードを見ました。手動でインストールされたパッケージリストの生成と各パッケージのクエリ。ただし、バージョンIDのリストはありません。インストールされたパッケージのバージョンを入手する方法を知っている人はいますか?
答え1
これに既存のコードがあるかどうかはわかりません。しかし、文書を見るとわかります/var/lib/dpkg/status
。インストールされたパッケージに関するすべての情報はこのファイルに保存されます。
Pythonに精通していなくても、このファイルを解析するコードを書くのはとても簡単です。
答え2
これがaskubuntuに移行されるべきではないかどうかはわかりませんが、上記のスレッドと同じ方法を使用してください。 dpkg / dpkg-queryを実行してすべてのデータのダンプを取得し、標準のPython解析メカニズムを使用して関連情報を抽出します。
もちろん、すでに分岐しているので、bash自体ですべてのテキストを変更できます。
または、バージョンを含むステータスファイル( "Dir :: Etc :: Status"?)がある場合は、それを見つけます。この方法が最もきれいです。
答え3
-F
(--format
)オプションをaptitudeに渡します。表示されるフィールドの指定。
aptitude --disable-columns -F '%p %v' search '~A'
Pythonはpackagesapt_pkg
のモジュールを使用しますpython-apt
。