开发者

grab last n lines from console output

I want to make a shell script that will effectively grab the last n lines from sterr and stin that were outputted to the console. I have a screen session running a process that will rest开发者_运维知识库art it if it crashes via a hacky infinite loop:

#!/bin/bash
#This script will be started in a screen session
counter=0
while [ $counter -lt 10 ]; do
    ./run_some_process;
     last_output=#GRAB PREVIOUS OUTPUT FROM CONSOLE HERE AND LOG TO FILE
     echo -e "$last_output" >> mylog.txt;
    sleep 5; #sleep for a few seconds before restarting
done

What I need is for the 7th line of code to grab the last 10 or so lines from stderr and stdin and append them to a log file


 ./run_some_process 2>&1 | tail -10 >>logfle

tail -10 will give you last ten lines, 2>&1 redirects stderr to stdout, >>logfle appends to logfile.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜