我想对server.log进行错误分析,我希望在10行之前和10行后出现错误,所以下面的脚本在Hp-ux中给出错误,请提供备用解决方案:
grep -A 10 -B 10“ERROR”server.log >> /tmp/Test.log
希望这可以帮助
grep -A10 -B10 -P "ERROR" server.log >> /tmp/Test.log
由于旧的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
脚本来打印上下文。