Dnf
如何從安裝的 dnf 列表中獲取可解析的輸出?
dnf list installed
輸出是人類可讀的,但對機器解析器不是很友好。是否有命令允許我們以 json 或 csv 或其他解析器友好格式獲取已安裝的包?dnf 是否有 python 綁定提供更好的界面?
該
rpm
命令提供了一些更靈活的選項來列印結果。要列出已安裝rpm --query --all
的包,您可以使用--queryformat
.例如,僅列印您可以使用的包的名稱
rpm -qa --queryformat "%{NAME}\n"
。您可以進一步以類似printf
- 的語法指定輸出,並且可以使用rpm --querytags
列印所有可用的“變數”rpm
來列印關於包的資訊。查看rpm 手冊頁以獲取更多資訊。是的,DNF 也有 Python 綁定,文件可在此處獲得,要獲取已安裝的軟體包,您可以執行以下操作:
import dnf base = dnf.Base() base.fill_sack() q = base.sack.query() list(q.installed())