
[hch@EAISRVBJ2 log]$find ./ -name "test_chs_00*"|xargs du -ck|grep total|awk 'BEGIN{sum=0}{sum+=$1}END{print sum}'
315590856 参数说明
-c或--total 除了显示个别目录或文件的大小外,同时也显示所有目录或文件的总和。
-k或--kilobytes 以KB(1024bytes)为单位输出
另一种更简单的方法,感谢superfly提供的方法
[root@app01 b2c]# du -ch ./*
672K ./--.log
976K ./--.log
848K ./--.log
748K ./--.log
792K ./--.log
988K ./--.log
1.1M ./--.log
1.1M ./--.log
1.2M ./--.log
892K ./--.log
1.4M ./--.log
1004K ./--.log
1.2M ./--.log
1.2M ./--.log
1.1M ./--.log
1.1M ./--.log
1012K ./--.log
936K ./--.log
904K ./--.log
1.1M ./--.log
1.1M ./--.log
1.2M ./--.log
1.1M ./--.log
1.1M ./--.log
972K ./--.log
1.1M ./--.log
1.2M ./--.log
1.2M ./--.log
1.2M ./--.log
1.3M ./--.log
31M total
转换的结果为KB,将其转换为G。用bc计算
[hch@EAISRVBJ2 log]$ bc
bc 1.06.
Copyright -, , , , , Free Software Foundation, Inc.
This is free software with ABSOLUTELY NO WARRANTY.
For details type `warranty'.
// quit
转换结果为300G
如果没有安装bc,用let计算
[hch@EAISRVBJ2 log]$var1=`find ./ -name "EAIObjMgr_chs_00*"|xargs du -ck|grep total|awk 'BEGIN{sum=0}{sum+=$1}END{print sum}'`
[hch@EAISRVBJ2 log]$ let "var=$var1/1024/1024"
[hch@EAISRVBJ2 log]$ echo $var
299
写在一起执行如下:
var1=`find ./ -name "EAIObjMgr_chs_00*"|xargs du -ck|grep total|awk 'BEGIN{sum=0}{sum+=$1}END{print sum}'` && let "var=$var1/1024/1024" && echo $var"G"
转载请注明出处