读书人

shell编程 for 循环提取日记并awk做

发布时间: 2012-07-15 20:20:06 作者: rapoo

shell编程 for 循环提取日志,并awk做统计

日志文件:xx.dat(xx为时间标签)

日志格式:

#startTime xxxx

#username number

admin? 123

testuser 34

admin 3443

...

?

需求:将目录下所有dat内文件按用户累加number 输出

?

机器上有ubuntu,但考虑开发还是用xp,临时装了个cygwin,调试了大半天,发现awk真是强壮,shell真是强壮

?

得到两个命令

?

命令:

1、for file in '*.dat';do awk -F' '  '$1!="#"&&$1!="" {a[$1]+=$2}END {for (i in a) print i" "a[i]}' ${file};done2、cat *.dat|awk -F' '  '$1!="#"&&$1!="" {a[$1]+=$2}END {for (i in a) print i" "a[i]}' 

?

?

两种方式均可,但日志1天有200多个,每个5-10M,暂不知两个是否在效率上有不同,有待具体测试。。。

?

?

读书人网 >编程

热点推荐