竖列求和
#统计当前目录下压缩文件和普通文件
ls -l |grep "tar\.gz"
ls -l |grep -v "tar\.gz"
#grep 最好加双引号并加上转义
[root@10-19-60-16 trafficdatapush_data]# ls -l |grep "tar\.gz" | head -5
-rw-r--r-- 1 root root 45 Apr 12 13:16 20180930_11.test.result.tar.gz
-rw-r--r-- 1 root root 4368364 Apr 12 14:07 20181011_09.onlined.result.tar.gz
-rw-r--r-- 1 root root 37920105 Apr 12 14:07 20181011_10.onlinec.result.tar.gz
-rw-r--r-- 1 root root 3835136 Apr 12 14:07 20181011_10.onlined.result.tar.gz
-rw-r--r-- 1 root root 91688929 Apr 12 14:07 20181011_10.test.result.tar.gz
#要统计总大小,第五列求和
ls -l |grep "tar\.gz" |awk -F " *" '{sum+=$5; print $5","sum} END {print sum}'
# -F“ *” 指定分隔符,多个连续空格为分隔符,不然会严格一一个空格分割
# '....'单引号中是具体操作
# {sum+=$5; print $5","sum} 对于每一行sum+=第五列($0是完整的当前行)
# END {print sum} 最后所有行结束之后输出sum