dnf list installed输出是人类可读的,但对机器解析器不太友好。是否有命令允许我们以json或csv或其他解析器友好格式获取已安装的包?dnf有python绑定提供更好的接口吗?
发布于 2021-09-24 10:32:58
rpm命令为打印结果提供了一些更灵活的选项。对于列出已安装的包,您可以使用rpm --query --all并使用--queryformat格式化输出。
例如,要只打印包的名称,可以使用rpm -qa --queryformat "%{NAME}\n"。您可以使用printf-like语法进一步指定输出,并且可以使用rpm --querytags打印rpm可以打印的有关包的所有可用“变量”。有关更多信息,请查看rpm手册页。
是的,DNF也有Python绑定,文档是可用的这里,要获得安装的包,您可以这样做:
import dnf
base = dnf.Base()
base.fill_sack()
q = base.sack.query()
list(q.installed())https://unix.stackexchange.com/questions/670428
复制相似问题