centos - 如何从 yum 插件中触发 'yum clean all'?

标签 centos fedora redhat rpm yum

我正在编写一个 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/

相关文章:

linux - 如何将远程 tarball 提取到本地机器上

docker - Kubernetes 上的 VDO

centos - 在不更改组所有权的情况下向目录添加组权限?

linux - 将脚本的符号链接(symbolic link)添加到 rc<number>.d 文件夹中以在系统启动期间启动进程

linux - 松弛 curl 不起作用

docker - 在 Docker 中访问主机目录的权限被拒绝

Linux Fedora swift 符号查找错误

centos - Vagrant 错误 - 未定义方法 `gsub!' 为 nil :NilClass (NoMethodError)

php - 优化 Nginx + PHP-FPM 500 万日浏览量

python - 如何使用 Python 下载文件?