清除名称中带有给定字符串的每个包

清除名称中带有给定字符串的每个包

我想要做的是清除(通过 aptitude purge)每个安装的名称中带有给定字符串的软件包。

例如 apache2。我在系统上安装了几个名称中包含字符串 apache2 的软件包。现在我想使用 aptitude purge阿帕奇2(例如 apache2、apache2.2-bin、libapache2-mod-ruby 等)。但我找不到这样做的方法。

提前感谢您的回答。

答案1

快速浏览《能力倾向参考手册》中我发现的模式此条目

从此开始,aptitude purge ?name('apache2')将会做你想做的事,但如果你很明智的话,你会-s第一次运行它,这样你就可以在执行任务之前看到它将删除什么。

答案2

我将解析 dpkg --get-selections 的输出,并执行以下操作。

$ dpkg --get-selections | cut -f 1 | grep apache | sudo xargs aptitude purge -y

(为了更好地理解,请随意一步一步地尝试管道。)

相关内容