Bash 如何计算目录中文件的总大小

Bash 如何计算目录中文件的总大小,bash,Bash,我想通过bash计算某个给定目录中文件的总大小。giben thaht最好的方法是什么?如果有一个选项可以选择以不同的单位显示结果:MBs,GBs,我将不胜感激。du命令就是您要找的 类型:du-hs文件夹/* -s计算文件夹中的总大小 -h使其易于阅读对于咧嘴笑和咯咯笑,您还可以使用ls和awk。使用此方法,可以使用1024的多个分区来选择单位 # Sum in bytes ls -1l | grep -v ^total | awk '{sum += $5 } END { print sum

我想通过bash计算某个给定目录中文件的总大小。giben thaht最好的方法是什么?如果有一个选项可以选择以不同的单位显示结果:MBs,GBs,我将不胜感激。

du
命令就是您要找的

类型:
du-hs文件夹/*

-s
计算文件夹中的总大小

-h
使其易于阅读

对于咧嘴笑和咯咯笑,您还可以使用
ls
awk
。使用此方法,可以使用1024的多个分区来选择单位

# Sum in bytes
ls -1l | grep -v ^total | awk '{sum += $5 } END { print sum "b"}'

# Sum in Kilobytes
ls -1l | grep -v ^total | awk '{sum += $5 } END { print sum/1024 "KB"}'

# Sum in Megabytes
ls -1l | grep -v ^total | awk '{sum += $5 } END { print sum/1024/1024 "MB"}'

# Sum in Gigabytes
ls -1l | grep -v ^total | awk '{sum += $5 } END { print sum/1024/1024/1024 "GB"}'

只是目录本身中的文件,还是需要计算该目录所有子目录中的所有文件?