有许多软件包没有被“apt-get purge”删除,我想自动清理它们。
你不能这样做,apt-get purge apache2.2-common
因为 pkg 已经被删除。
您仍然可以使用 列出 pkg 中的文件dpkg -L apache2.2-common
。
这意味着我可以删除 pkg 中的文件列表,但 dpkg 如何知道这一点?如何删除遗留的配置文件并将其从以下报告中删除?
示例输出:
$ dpkg -l | grep ^rc
rc apache2.2-common 2.2.14-5ubuntu8.10 Apache HTTP Server common files
rc libapache2-mod-php5filter 5.3.10-1ubuntu2ppa6~lucid server-side, HTML-embedded scripting languag
rc libapr1 1.3.8-1ubuntu0.3 The Apache Portable Runtime Library
rc libaprutil1 1.3.9+dfsg-3ubuntu0.10.04.1 The Apache Portable Runtime Utility Library
rc libgd2-xpm 2.0.36~rc1~dfsg-3.1ubuntu1 GD Graphics Library version 2
rc libt1-5 5.1.2-3ubuntu0.10.04.2 Type 1 font rasterizer library - runtime
rc php5-gd 5.3.10-1ubuntu2ppa6~lucid GD module for php5
rc ssl-cert 1.0.23ubuntu2 simple debconf wrapper for OpenSSL
答案1
类似这样的操作可以找到包名称:
dpkg --list | grep ^rc | awk '{print $2}'
或者要删除管道数量,您可以使用以下命令:
dpkg --list | awk '/^rc/ {print $2}'
因此,下一步是将其中一个列表输入到dpkg --purge
。使用子 shell 可以轻松完成此操作:
dpkg --purge $(dpkg --list | grep ^rc | awk '{print $2}')
简单的!