如何在Linux中找到目录的大小
本简要教程介绍了如何在Linux操作系统中找到目录的大小。
找到GUI模式的文件和目录大小很容易!我们所要做的就是右键单击文件或者目录,然后从上下文菜单中选择"属性"选项。
但是,了解如何从CLI模式查找目录的大小同样重要。
让我解释如何从命令行找到目录大小。
在Linux中查找目录的大小
要找出目录的大小,我们将使用'du'命令。
du代表磁盘使用情况。
du命令的典型语法如下:
du [OPTION]... [FILE] [directory]... du [OPTION]... --files0-from=F
让我们在终端中键入'du'命令,并查看它显示的内容。
$du
示例输出:
如上所述,du命令将显示目录的磁盘使用以及当前目录中的子目录。
要显示特定目录的大小,例如onIrad,运行:
$du theitroad/
示例输出:
36252 theitroad/Swami Vivekananda (Chicago Speech) 452 theitroad/MultiCD/plugins 44 theitroad/MultiCD/.git/hooks 4 theitroad/MultiCD/.git/branches 1012 theitroad/MultiCD/.git/objects/pack 4 theitroad/MultiCD/.git/objects/info 1020 theitroad/MultiCD/.git/objects 8 theitroad/MultiCD/.git/logs/refs/heads 8 theitroad/MultiCD/.git/logs/refs/remotes/origin 12 theitroad/MultiCD/.git/logs/refs/remotes 24 theitroad/MultiCD/.git/logs/refs 32 theitroad/MultiCD/.git/logs 8 theitroad/MultiCD/.git/refs/heads 4 theitroad/MultiCD/.git/refs/tags 8 theitroad/MultiCD/.git/refs/remotes/origin 12 theitroad/MultiCD/.git/refs/remotes 28 theitroad/MultiCD/.git/refs 8 theitroad/MultiCD/.git/info 1168 theitroad/MultiCD/.git 140 theitroad/MultiCD/maps 2706504 theitroad/MultiCD 2832056 theitroad/
我们还可以以"人类可读格式"显示尺寸(即,自动选择每个尺寸的适当单位),而不是标准块大小。
要执行此操作,请使用du命令添加-h标记,如下所示。
$du -h theitroad/
示例输出:
36M theitroad/Swami Vivekananda (Chicago Speech) 452K theitroad/MultiCD/plugins 44K theitroad/MultiCD/.git/hooks 4.0K theitroad/MultiCD/.git/branches 1012K theitroad/MultiCD/.git/objects/pack 4.0K theitroad/MultiCD/.git/objects/info 1020K theitroad/MultiCD/.git/objects 8.0K theitroad/MultiCD/.git/logs/refs/heads 8.0K theitroad/MultiCD/.git/logs/refs/remotes/origin 12K theitroad/MultiCD/.git/logs/refs/remotes 24K theitroad/MultiCD/.git/logs/refs 32K theitroad/MultiCD/.git/logs 8.0K theitroad/MultiCD/.git/refs/heads 4.0K theitroad/MultiCD/.git/refs/tags 8.0K theitroad/MultiCD/.git/refs/remotes/origin 12K theitroad/MultiCD/.git/refs/remotes 28K theitroad/MultiCD/.git/refs 8.0K theitroad/MultiCD/.git/info 1.2M theitroad/MultiCD/.git 140K theitroad/MultiCD/maps 2.6G theitroad/MultiCD 2.8G theitroad/
现在,我们将在千字节,兆字节和千兆字节中看到目录的大小,这非常清晰,易于理解。
我们还可以在KB或者MB或者GB中显示磁盘使用大小。
为此,请使用-k千字节,-m for megabytes
$du -k theitroad/
$du -m theitroad/
要了解哪些子目录消耗多少磁盘大小,请使用此命令:
$du -h --max-depth=1 | sort -hr
最大的子目录将显示在顶部。
我们可以通过增加--max-depth参数的值来增加目录深度级别。
由于我们可以在所有上述输出中注意到,Du命令仅显示目录的磁盘使用情况。
但是,文件怎么样?
要显示包含文件和目录的所有项目的磁盘使用,请使用-a标志。
$du -ah theitroad/
现在,我们将看到人为可读形式中所有文件和文件夹的磁盘使用情况。
我们还可以一次显示多个目录的大小,如下所示。
$du -h directory1 directory2
如果要检查特定目录使用的总磁盘空间,请使用-s标志。
$du -sh theitroad
其中-S标志表示摘要。
示例输出:
2.8G theitroad
同样,要显示多个目录使用的总磁盘空间,例如onatroad和/etc,运行:
$du -sh theitroad /home/sk/
示例输出:
2.8G theitroad 279G /home/sk/
要显示总目录的总计,请使用du -sh命令添加-c标志。
$du -csh theitroad /home/sk/
示例输出:
2.8G theitroad 279G /home/sk/ 281G total
只要仅显示给定目录的总计,包括所有子目录,使用以下命令使用"grep"命令如下。
$du -ch Downloads/| grep total 12G total
我们可能希望排除某些类型的文件。
以下命令将显示当前目录的大小,包括其子目录,但它将排除所有.mp4文件的大小。
$du -ch --exclude='*.mp4' | grep total 6.4G total
有关"du"命令的更多详细信息,请检查手册页。
$man du