Shell脚本得到文件夹大小
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Shell脚本得到文件夹大小相关的知识,希望对你有一定的参考价值。
这是得到某文件的大小:
#!/bin/bash
wc -c 文件路径 | awk 'print int($1/1024)'
现在我想得到一个文件夹的大小,脚本该怎么写?求高手指点。。。
或者:
du -b 文件夹路径 | awk 'print int($1/1024)'
跟你上面计算文件大小类似,得到的都是以KB为单位的大小。
如果要以Byte为单位,不要除以1024也不要int取整就是了。
注意:Linux的ext2或ext3文件系统会给目录分配一个inode块(索引节点),用来记录文件信息,所以文件夹的大小不是简单地将其中文件大小累加就能得到的,还包括了这个索引节点的大小。索引节点是一个结构,它包含了一个文件的长度、创建及修改时间、权限、所属关系、磁盘中的位置等信息。 参考技术A 进入该文件及,执行 ll -t |awk 'if(NR>1) a+=$5 END print a/1024/1024' 单位M
以上是关于Shell脚本得到文件夹大小的主要内容,如果未能解决你的问题,请参考以下文章
求助Linux,编写Shell脚本程序统计指定目录中普通文件的个数及其总的大小
linux shell 脚本 历史文件清理脚本,按天,按月,清理前N天的历史文件,删除指定大小历史文件,历史文件归档清理