Chinaunix首页 | 论坛 | 博客
  • 博客访问: 437471
  • 博文数量: 126
  • 博客积分: 35
  • 博客等级: 民兵
  • 技术积分: 1262
  • 用 户 组: 普通用户
  • 注册时间: 2010-03-19 16:39
文章分类

全部博文(126)

文章存档

2017年(2)

2016年(20)

2015年(64)

2014年(24)

2013年(16)

我的朋友

分类: LINUX

2017-02-04 13:50:34




  1. #!/bin/bash
  2. # 读一个连续增加的文件(例如:程序日志)

  3. file="test.log"
  4. cur_line=0
  5. total_line=`wc -l $file|awk '{print $1}'`
  6. while [ 1 ]
  7. do
  8.     begin_line=`expr $cur_line + 1`
  9.     end_line=`expr $cur_line + 5`
  10.     total_line=`wc -l $file|awk '{print $1}'`
  11.     while [ $total_line -eq $cur_line ]
  12.     do
  13.         total_line=`wc -l $file|awk '{print $1}'`
  14.         echo "no new line, waite....."
  15.         sleep 1
  16.     done
  17.     sed -n "$begin_line,$total_line"p frame.log|while read line
  18.     do
  19.         echo $line
  20.         #cur_line=`expr $cur_line + 1`
  21.         #let cur_line++
  22.     done
  23.     cur_line=$total_line
  24. done
cur_line记录当前所读的行数,while循环不断地从cur_line开始读取到文件结束(每次判断total_line,total_line没有变化则sleep)

参考:
shell 传参sed
http://blog.csdn.net/mdming412/article/details/52198341

Shell逐行读取文件的4种方法


shell 如何从某行开始读文件


shell sed 和正则表达式 以及向sed传递参数


shell 的变量作用域
http://blog.csdn.net/zhuboyan123/article/details/39024845

shell中变量自增的实现方法



阅读(624) | 评论(0) | 转发(0) |
0

上一篇:log4cplus的使用说明

下一篇:没有了

给主人留下些什么吧!~~