我正在编写一个 yum 插件来更新本地存储库的 URL。当存储库 URL 更改时,我想让 yum 运行 yum clean all
以确保不会缓存任何过时的信息。我知道 yum 有一个在 yum clean [plugins|all]
时运行代码的钩子(Hook)已请求,但是否可以从插件的其他 Hook 函数之一触发清理全部?
最佳答案
您可以轻松做到这一点。 Yum 公开了一个由命令行程序使用的库。以下是 yum clean all 的示例代码:
import sys
sys.path.append("/usr/share/yum-cli")
import cli
ybc = cli.YumBaseCli()
ybc.cleanCli(["all"])
如果您想要执行更多操作,请使用函数检查/user/share/yum-cli 文件夹中公开的 CLI 库方法公开的所有 API :)
问候,
关于centos - 如何从 yum 插件中触发 'yum clean all'?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10435954/