awk grep 立马刷缓存 结果定向入文件立即生效

来源:互联网 发布:怎么用cmd运行java文件 编辑:程序博客网 时间:2024/05/16 10:37

1、grep 加入选项 --line-buffered

     tail -f /opt/log/master.log |grep '^29-.*成功' --line-buffered | ./1.awk | tee re3.txt &

2、 awk '{awk_scripts; fflush(); }' ; 调用 ffush();

     1.awk 内容如下:

    

#!/bin/awk -f

#29-5 lhm存钱10000.0000成功

#29-3 wusthongmin取钱2000.0000成功

  print $0;

  f1=$1;

  f2=$2;

  opt=substr(f1,4,1);

  beg=index(f2, "成功");

  aa=substr(f2,1,beg-1);

  num=split(aa, myarr,"钱")

  if( 2== num){

     money=myarr[2];

    namelen=length(myarr[1]) - 2;

    uname = substr(myarr[1],1, namelen);

    printf("%d %12d %16s\n", opt, money, unmae);

 }

  fflush();


结果:

29-5 lhm存钱10000.0000成功

5       10000                   lhm 

29-3 wusthongmin取钱2000.0000成功

3       2000      wusthongmin


别的进程,再进一步处理操作日志文件


1 0
原创粉丝点击