【问题标题】:issue in script for server log analysis服务器日志分析脚本中的问题
【发布时间】:2016-12-01 08:44:12
【问题描述】:

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

grep -A 10 -B 10 "错误" server.log >> /tmp/Test.log

【问题讨论】:

    标签: shell hp-ux


    【解决方案1】:

    希望对你有帮助

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

    【讨论】:

    • grep: 非法选项 -- A 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... ] 用法:grep [-E|-F] [-c|-l|-q] [-bhinsvwx] [-e pattern_list...] -f pattern_file... [file...] 用法:grep [- E|-F] [-c|-l|-q] [-bhinsvwx] 模式 [文件...]
    【解决方案2】:

    由于旧的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 脚本来打印上下文。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-09-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多