方法是利用 xargs 管道命令来调用 du 命令。
示例3:统计ls命令找到的所有文件的大小
示例1:统计find命令查找出来的文件的大小和总大小
# -c:总大小,-b:以bytes为单位
$ find ./ -iname "*.py" | xargs du -cb
运行结果:
381 ./sum_all_numbers.py
487 ./parse_resource.py
471 ./test.py
2871 ./diff_excel.py
3338 ./xml_parser.py
2059 ./dir_parser.py
9607 总用量
示例2:allfiles.txt文本文件中列出了要统计文件大小的所有文件名(包含路径)
$ cat allfiles.txt | xargs du -cb
# 等同于:
$ du -cb `cat allfiles.txt`
运行结果:
6144 ./temp/file1.xls
6144 ./temp/file2.xls
197 ./adb-restart-server.sh
381 ./sum_all_numbers.py
487 ./parse_resource.py
196 ./allfiles.txt
78 ./test.sh
471 ./test.py
9 ./Makefile.mk
2871 ./diff_excel.py
3338 ./xml_parser.py
2059 ./dir_parser.py
22375 总用量
示例3:统计ls命令找到的所有文件的大小
$ ls *.sh | xargs du -cb
运行结果:
197 adb-restart-server.sh
78 test.sh
275 总用量