我希望列出我机器上安装的软件,并列出它们占用的磁盘空间。我希望能够按最大/最小排序,但这不是必需的。
我是那种会安装软件来尝试,但安装后从不自己清理的人。
结果,我的 7GB(Windows 和我的数据位于不同的分区以及交换区域)Ubuntu 11.04 分区出现问题,并开始定期显示警告消息。
答案1
dpkg-query -W -f='${Installed-Size;8} ${Package}\n' | sort -n
显示按大小排序的包列表
答案2
您可以在图形中执行此操作突触 。
首先确保您启用了“安装大小”和“下载大小”列(或者只启用其中一个)。
- 要执行此操作,请访问设置 > 偏好设置并选择列和字体,然后勾选您想要查看的列。
- 然后点击好的。
- 一旦启用它们,您可以通过单击列列出按下载/安装大小安装的软件包。
- 请注意:我没有按照这个屏幕截图的方式列出我的包裹,但是它可以起作用。
答案3
首选解决方案
我发现了一个更简短的答案,不需要aptitude
:
dpkg-query -Wf '${Installed-size}\t${Package}\n' | column -t
旧建议的解决方案
该show
命令aptitude
可以显示包的安装大小。
我有这个小脚本,它利用aptitude
(单独安装)来获取所有已安装包的列表,其大小如下:
#!/bin/bash
export LC_ALL=C
aptitude show $(dpkg-query -Wf '${Package}\n') |
awk '$1 == "Package:" { name = $2 }
$1 == "Uncompressed" { printf("%10s %s\n", $3, name) }' |
awk '$1 ~ /k/ { $1 *= 1 }; $1 ~ /M/ { $1 *= 1024 }
{ printf("%9d %s\n", $1, $2)}'
大小以千字节表示,并且是近似值,如所返回的aptitude show pkg
。
只需一次调用即可改进该脚本awk
(但我很懒:-)
答案4
您可以在基于终端的包管理器 Aptitude 中查看这样的列表:
- 使用 打开 Aptitude
sudo aptitude
。 - 按S大写 S 并
~installsize
在提示符下输入。(表示~
降序排序;如果希望最小的包放在最上面,可以省略它。) - 到目前为止,软件包在每个层次结构级别内按大小排序。要获得概览,您需要尽可能少的级别。在提示符下按下G并输入。现在所有已安装的软件包都位于单个部分中,按大小排序。
status