it-swarm.cn

如何了解正在占用磁盘空间的内容?

我正在寻找 WinDirStat 的Linux替代品。我想知道什么占用了我的硬盘驱动器上的空间。

首选在控制台上运行且不需要UI的程序。

89
ripper234

根据您在 安装ncd 中的问题,我的建议是一起使用dusort

例如:

  • du /home | sort -rn(将搜索/ home下的所有文件/目录,并按最大到最小的顺序对它们进行排序。
  • du -h /home | sort -rh(相同,但以MB/KB /等显示)-请注意,这需要coreutils 7.5或更高版本(sort --version 去检查)

您可以将/ home替换为您选择的任何目录。

75
N J

如果需要命令行工具,我更喜欢 ncd ,它是du的ncurses版本。它扫描磁盘(或给定的文件夹),然后显示顶级空间使用情况;您可以选择一个给定目录以获取该目录的相应摘要,然后返回而无需重新分析:

Screenshot of ncdu


如果您可以使用GUI程序, Filelight 是我发现的最接近WinDirStat的东西;它显示了空间消耗的图形视图:

Screenshot of Filelight

ncdu类似,Filelight允许您选择给定目录以获取该目录的细目分类

92
Michael Mrozek

您应该注意WinDirStat实际上是KDirStat的端口 ,它是Linux/KDE程序。因此,如果您正在寻找WinDirStat的Linux替代产品,那么您当然应该看看 KDirStat 。它已经打包在大多数发行版中,只需安装即可。

另一个替代方法是已经被Michael Mrozek引用的FileLight和Konqueror插件fsview(您可以从命令行独立运行它)。

43
Juliano

另一个GUI程序是: baobab

alt text

34
sudobash

使用 QDirStat (以前是KDirStat)。

它包含一个Perl脚本,该脚本可在服务器/控制台上生成缓存文件,而无需运行/安装UI。将其传输到台式机并在gui客户端中查看。

有关详细信息,请参见 https://unix.stackexchange.com/a/256516/186308

11
icyerasor

我更喜欢以下命令行:

$  du -s -m -x * | sort -n

分解一下,du显示磁盘使用情况; -s说打印每个参数(当前目录中的每个项目)的总数,-m说显示大小(以兆字节为单位)。这使得分类工作变得更加容易。 sort并不真正理解-h的输出。 -x忽略其他文件系统;这在尝试在/var中查找空间猪时非常有用,而/var/spool/foo是另一个文件系统。

7
P Joslin

还有一个很酷的python /www.vrplumber.com/programming/runsnakerun/

bzr branch lp:~mcfletch/squaremap/trunk squaremap

它并不是功能最丰富的工具,但是它是从一个python)脚本运行的,因此非常易于移植。

alt text

6
Falmarri

如果您在windirstat上查看“关于”屏幕,则表明它基于kdirstat。

http://kdirstat.sourceforge.net/

6
DF1eCH

您也可以尝试 Gd Map ,这是另一个基于树形图的GUI工具。

4
Bruno

xdiskusage 非常灵活,轻巧,具有非常精简的依赖关系,易于编译。

它从左到右显示一棵树,您可以使用鼠标或箭头键进行导航,放大(单击或输入),隐藏某些部分以获得更好的视图,使用键或上下文菜单更改排序顺序,颜色数量等。

它的重量轻到可以在远程SSH链接上以良好的性能使用它。在这种情况下,我建议-q命令行选项可禁用在移动文件时显示的进度条。

您也可以选择预先自己运行du

一种情况是远程文件系统已满或接近满。在该系统上运行du -ak | gzip >log_of_disk_usage.txt.gz,获取输出并运行gzip -dc log_of_disk_usage.txt.gz | xdiskusage -aq本地。
甚至 ssh myremotesystem "cd /filesystem_near_full/ ; du -ak | gzip" > log_of_disk_usage.txt.gz将结果存储在本地,而无需远程编写任何内容。

xdiskusage不提供修改文件系统的功能(例如移至回收站等),但是您可以将路径复制到剪贴板并将其粘贴到文件管理器,终端等中。

xdiskusage screenshot

3
Stéphane Gourichon

我最近使用了命令行工具(CLI,而不是TUI): http://zevv.nl/play/code/philesight/

它会生成一个PNG文件,您可以在其他地方查看。它还具有一个CGI脚本。

您很可能不局限于本地工作站上的文本模式,因此应该适当。

2
OCTAGRAM

Duc( https://duc.zevv.nl/ )将在命令行中运行。

可以在Debian 9中像这样安装和使用它:

# apt install duc
# duc index /
# duc graph /

这样,您将在当前目录中获得一个名为duc.png的文件。现在,您可以将此文件复制到另一台支持GUI的计算机,其外观如下: duc.png

注意:Duc是@OCTAGRAM在其答案中提到的工具的替代品。

1
Jaime Hablutzel

在使用du use找到目录后,还要查看按大小排序的特定目录中的文件:

ls -lrSh
1
Wodin