zoukankan      html  css  js  c++  java
  • 一个日志按照小时的格式化输出脚本

    #!/bin/bash
    #使用前请先创建一个路径文件夹/tmp/weblog
    #确定当前时间,即脚本执行日的0时
    time=`date "+%y%m%d:%H"`
    #定位日志时间格式为:20140624:00
    date1="20$time"
    #记录循环次数变量count
    count=0 #开启死循环,每小时筛选一次日志,并输出
    while :;do #获取当前时间,作为每次循环的1小时日志名 n=`date` #等待日志输出3600,即1小时 sleep 3600 #获取1小时后,此时日志的末行 date2=`tail -1 log` #用sed获取此次循环中,这个1小时日志的两端数据,以便于获取到1小时的日志区间 sed -n '/'"$date1"'/,/'"$date2"'/p' log > /tmp/weblog/$n.log #用awk将这个1小时的日志进行格式化,并输出到一天的日志webc.log awk 'BEGIN{printf "%-10s %-10s ","time","avg_time"}$NF ~ /^[0-9]/{sum+=$NF;n++}END{if(n != 0)printf "%-10s %-10s ", sum,sum/n}' $n.log >> /tmp/weblog/webc.log #将本次循环的1小时末端数据作为下次循环的开端数据 date1=$date2 #循环次数+1 count=$[ $count+1 ] #若次数为24,说明一天结束,将webc.log改名为当天日期名,并放到/home下 [ $count -eq 24 ] && mv /tmp/weblog/webc.log /home/web_`date +F`.log && count=0 done
    [星空刺] |-->一颗星辰一闪即逝,支撑它的唯有方向和目的
  • 相关阅读:
    快速排序
    Java LinkedList
    Java ArrayList
    Java ReentrantLock
    Java Timer
    Java 管道PipedInputStream PipedOutStream PipedReader PipedWriter
    6. Samba服务和防火墙配置笔记
    5. 网络配置与FTP服务笔记
    3.vi 和软件安装
    2 . Linux常见命令
  • 原文地址:https://www.cnblogs.com/aaa103439/p/3805215.html
Copyright © 2011-2022 走看看