6

我想用一个 3 行 Python 脚本来执行此操作,但 yum Python API 是难以理解的。这甚至可能吗?

为“yum list package-name”编写一个包装器是唯一的方法吗?

4

2 回答 2

7

http://fpaste.org/paste/2453

这里有很多 yum api 的例子和一些入门指南:

http://yum.baseurl.org/#DeveloperDocumentationExamples

于 2009-01-29T02:36:40.443 回答
4

正如 Seth 所指出的,您可以使用更新 API 来询问是否有可用的更新。对于接近“yum 列表”的内容,您可能想要使用 doPackageLists()。例如。

import os, sys
import yum

yb = yum.YumBase()
yb.conf.cache = os.geteuid() != 1
pl = yb.doPackageLists(patterns=sys.argv[1:])
if pl.installed:
    print "Installed Packages"
    for pkg in sorted(pl.installed):
        print pkg
if pl.available:
    print "Available Packages"
    for pkg in sorted(pl.available):
        print pkg, pkg.repo
if pl.reinstall_available:
    print "Re-install Available Packages"
    for pkg in sorted(pl.reinstall_available):
        print pkg, pkg.repo
于 2009-01-29T03:41:55.133 回答