毕业论文开发语言企业开发JAVA技术.NET技术WEB开发Linux/Unix数据库技术Windows平台移动平台嵌入式论文范文英语论文
您现在的位置: 毕业论文 >> linux >> 正文

shell脚本写入日志时超过一定的记录条数后,新写入的覆盖掉前面时间最早最老的记录

更新时间:2012-7-24:  来源:毕业论文

是这样的,echo写一个日志文件,内容如下形式

C/C++ code
exec at 2012-07-23 11:11:43
exec at 2012-07-23 11:11:43
exec at 2012-07-23 11:12:43
exec at 2012-07-23 11:13:43


考虑到日志文件大了后超出物理盘的容量。

希望写入日志时超过一定的记录条数后,新写入的覆盖掉前面时间最早最老的记录

请问用shell 编程怎么实现?

删除最前面一行,然后追加就够了。假设最大的文件行数是20行,每隔2s向文件写入一行信息。

Python code#!/bin/bash
LINE=20
LOG_FILE="log.txt"
if [ ! -e $LOG_FILE ]
then
    touch $LOG_FILE
fi

while true
do
    line=`wc -l $LOG_FILE | awk '{print $1}'`
    echo $line
    if [ $line -ge $LINE ]
    then
        sed -i '1d' $LOG_FILE
        echo exec at `date` >> $LOG_FILE
    else
        echo exec at `date` >> $LOG_FILE
    fi
    sleep 2
done

设为首页 | 联系站长 | 友情链接 | 网站地图 |

copyright©chuibin.com 优尔论文网 严禁转载
如果本毕业论文网损害了您的利益或者侵犯了您的权利,请及时联系,我们一定会及时改正。