假设我已经使用添加了一个存储库zypper ar
。然后,我从该存储库安装了多个软件包,但现在我想删除所有这些软件包。
是否有一个命令允许我从该特定存储库中删除我安装的所有软件包?
答案1
我认为没有这样的命令。您可以列出特定存储库中的包:
zypper search --installed-only --repo devel:tools
或所有孤立的软件包(如果您已经删除了该存储库):
zypper packages --orphaned
然后,您可以尝试cut
从输出中打包名称并将其传递给(zypper remove
如果值得的话)。
答案2
zypper search
您可以使用、awk
和的组合xargs
来从存储库中删除所有包。例如:
zypper se --repo openSUSE-Tumbleweed-Debug --installed | awk '/^i(\+|\s)/ {print $3}' | xargs sudo zypper rm
答案3
这条线对我来说效果很好
zypper search --installed-only --repo yourbadrepo|awk {'print $3'}|xargs sudo zypper rm
如果你想在脚本中冒险或使用, -n 选项避免确认(可以破坏 deps)
zypper search --installed-only --repo yourbadrepo|awk {'print $3'}|xargs sudo zypper -n rm