通过执行**./gendata**执行程序,会在/tmp产生大量的日志,每一分钟产生一个文件,保存本分钟内所有数字之和。

gendata文件:

#!/usr/bin/python
import time,random, threading


def gen():
    fname = '/tmp/log_'+str(time.strftime('%Y%m%d%H%M%S'))
    with open(fname, 'w') as f:
        for i in range(random.randrange(50000,90000)):
            f.write(str(random.randint(0,999999))+"\t")
            if i%100==0:
                f.write('\r\n')

while True:
    timer = threading.Timer(2.0, gen)
    timer.start()
    time.sleep(10)

shell命令文件:

#!/bin/bash

for((i=0;i<10;i++))
 do
  sleep 1m
  fname=`date +'%Y%m%d_%H%M%S'`
  fname1=`find /tmp -mmin -1 -name "log_*" `
  awk 'BEGIN{count=0;}{split($0,a,"\t");for(i in a){count+=a[i];times+=1;}}END{print times,count,count/times}' $fname1> $fname.txt
 done

分别执行,可以后台,也可以克隆会话分别执行

Logo

CSDN联合极客时间,共同打造面向开发者的精品内容学习社区,助力成长!

更多推荐