Linux怎样计算一个目录下一部分文件的总大小
用du -sk *20130606* 命令返回Argument list too long 展开
1、首先我们要知道怎么查看目录下文件,ls 这个命令就可以;但是在虚拟机中无法直接通过 ls 这个命令直接看出 文件 是 目录还是 问价(linux 的文件 系统划分 需要掌握)。
2、我们就需要 ls 的拓展命令 ls-l (可以直接用 ll 这样的简化命令,更多的可以自己查相关资料,命令的相关资料太多了...);这里我们就可直接看出 文件 的类型; 标出的信息开头 ‘-’就是 文件命令中用 f 表示; ‘d’就是目录,命令中就用‘d’表示。
3、然后我们开始进行如何统计;find 这个命令可以查找文件;通过 find /tmp/ -name 文件名,找出来。
4、然后我们通过扩展 命令 :find -type f(找出 文件类型是 f 的文件)我们可以看出 这个命令效果。
5、然后我们 通过 wc -l 这个命名进行统计;但两个命令需要一起使用, 这个时候通过管道符 “ | ”链接;命令就是:find -type f |wc -l;我们就可以实现 统计文件个数。
6、同理如果想要统计 目录 ,使用如图命令:find -type d|wc -l;默认会统计 隐藏的 文件或者 目录;所以显示的是 3。
7、隐藏文件或者目录是 ‘.’开头的,所以我们排除它,就可以只统计出显示的文件。
du -h xxx 可以查看单个文件夹的大小
du -h xxx xxx xxx 可以分别查看多个文件的大小
du -h /xxxx 分别列出整个文件夹下 所有文件的大小
du -sh /xxxx 统计整个文件夹的大小
可以使用管道
ls -l | grep 20130606 | awk '{c += $5}END{print c/1024/1024 "MB"}'
如果文件数量不那么多可以使用
du -m *20130606* | awk '{c+=$1}END{print c}'
这两个命令显示的单位是MB,如果要显示GB可以print c 的c再除以一个1024