红联首页 凝聚Linux人的力量
菜鸟过关 | 精华文档 | 同城人(交友) | 我与Linux的故事 | Linux新闻 | Linux视频 | Linux人才 | 软件下载 | 大学校园 | English
发新话题
打印

列出Gentoo不再使用的源文件

列出Gentoo不再使用的源文件

  Debian 的 apt-get 有一个命令 autoclean,删除已经下载的 deb 包中属于旧版本的文件。但是 Gentoo 的 portage 似乎没有提供一个相应的功能。研究了一下,发现只要用一条 bash 命令就可以把 /usr/portage/distfiles 中不属于任何已经安装的包的文件列出来:

  sed -e 's![^ ]*/!!g' -e 's/ /\n/g' /var/db/pkg/*/*/SRC_URI | sort -u | comm -13 - <(\ls /usr/portage/distfiles)

  先用上面的命令确认无误以后就可以加上 | xargs rm 将它们删除。(先 cd /usr/portage/distfiles)

  上面的命令 sed 给出的结果除了属于已经安装的包的文件外还有一些垃圾信息,但是都能经过 comm 过滤掉,并且应该不影响结果。ls 前面的反斜杠是为了排除 alias 的影响。

TOP

发新话题