2016-12-01 61 views
0

我想做server.log分析錯誤,我想在10行之前和10行之後出現錯誤,所以下面的腳本在給出錯誤Hp-ux,請提供備用解決方案:問題腳本中的服務器日誌分析

的grep -A 10 -B 10 「ERROR」 的server.log >> /tmp/Test.log

回答

0

希望這有助於

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

它的hp-ux so -A10和-B10不起作用。 –

+0

你能證明會發生什麼錯誤嗎? –

+1

grep的:非法選項 - 甲 grep的:非法選項 - 1個 grep的:非法選項 - 0 grep的:非法選項 - B grep的:非法選項 - 1個 grep的:非法選項 - 0 的grep :非法選項 - P 用法:grep [-E | -F] [-c | -l | -q] [-bhinsvwx] -e pattern_list ... [-f pattern_file ...] [file .. 。] usage:grep [-E | -F] [-c | -l | -q] [-bhinsvwx] [-e pattern_list ...] -f pattern_file ... [文件...] 用法:grep [-E | -F] [-c | -l | -q] [-bhinsvwx]模式[file ...] –

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腳本打印環境。