查找某目录下占用空间前几的文件并计算占用空间大小总和

1、du命令

-a或-all 显示目录中个别文件的大小
-b或-bytes 显示目录或文件大小时,以byte为单位
-c或--total 除了显示个别目录或文件的大小外,同时也显示所有目录或文件的总和
-D或--dereference-args 显示指定符号连接的源文件大小
-h或--human-readable 以K,M,G为单位,提高信息的可读性
-H或--si 与-h参数相同,但是K,M,G是以1000为换算单位
-k或--kilobytes 以1024 bytes为单位
-l或--count-links 重复计算硬件连接的文件
-L<符号连接>或--dereference<符号连接> 显示选项中所指定符号连接的源文件大小
-m或--megabytes 以1MB为单位
-s或--summarize 仅显示总计
-S或--separate-dirs 显示个别目录的大小时,并不含其子目录的大小
-x或--one-file-xystem 以一开始处理时的文件系统为准,若遇上其它不同的文件系统目录则略过
-X<文件>或--exclude-from=<文件> 在<文件>指定目录或文件
--exclude=<目录或文件> 略过指定的目录或文件
--max-depth=<目录层数> 超过指定层数的目录后,予以忽略
--help 显示帮助
--version 显示版本信息

2、sort命令

-n 依照数值的大小排序
-r 以相反的顺序来排序

3、head命令

-q 隐藏文件名
-v 显示文件名
-c<数目> 显示的字节数
-n<行数> 显示的行数

4、查找某目录下占用空间前三的文件

该目录下有以下文件,本次统计以.gz结尾的文件

命令:du -am -h | grep gz | sort -nr | head -n 3

5、计算总量

命令:du -am -h | grep gz | sort -nr | head -n 3 | awk '{sum += $1} END {print sum}'

原文地址:https://www.cnblogs.com/sxFu/p/15193825.html