+ -
当前位置:首页 → 问答吧 → 循环脚本请教

循环脚本请教

时间:2011-04-12

来源:互联网

公司要求我写一个SHELL循环脚本。(ubuntu环境)

背景:执行一个自动测试脚本打印日志到/data/0411.log

此程序执行完并不会停止打印log,只是会在log中打印finish。

我要做的就是每30秒去扫描一次log如果有finish的字符,就kill掉这个程序,以防止无用的log打印。但是不能写到crontab里。

目前用sleep配合if好像搞不定,请大侠指教,达到在后台运行这个脚本(e.g:sh xxx.sh &)达到一直扫描此log如发现finish就杀掉此程序.(假设程序进程为1000)


请大侠赐教,急!

作者: cuuccuuc   发布时间: 2011-04-12

log='/data/0411.log'
pid=`ps -efwww | grep Process_keyword | awk '{print $2}'`
while true
do
     if grep finish $log > /dev/null 2>&1
     then
             kill -9 $pid
     fi
     sleep 10
done

作者: licong_jay   发布时间: 2011-04-12