用于服务器日志分析的脚本问题

问题描述 投票:0回答:2

我想对server.log进行错误分析,我希望在10行之前和10行后出现错误,所以下面的脚本在Hp-ux中给出错误,请提供备用解决方案:

grep -A 10 -B 10“ERROR”server.log >> /tmp/Test.log

shell hp-ux
2个回答
0
投票

希望这可以帮助

grep -A10 -B10 -P "ERROR" server.log >> /tmp/Test.log

0
投票

由于旧的grep没有方便的-ABC选项,解决方案有点复杂:

grep -n "ERROR" server.log | sed 's/\([0-9]*\):.*/\1-10<=NR\&\&NR<=\1+10{print;next}/' \
                           | awk -f- server.log >>/tmp/Test.log

这使用sed -n获取行号和sed生成的awk脚本来打印上下文。

© www.soinside.com 2019 - 2024. All rights reserved.