需要显示硬错误、传输错误和2以上的软错误

需要显示硬错误、传输错误和2以上的软错误
iostat -En | nawk '/Hard Errors/ {line=$0;gsub(/.*Hard Errors:/,""); \
                                  if($1>2) printf("%s\n",line); }'

这个的输出是

c0t1d0          Soft Errors: 0 Hard Errors: 5 Transport Errors: 0

但就我而言,我需要像这样显示输出:

warning about iostat hard error , transport error & soft errors > 2 on system1 is \
"c0t1d0          Soft Errors: 0 Hard Errors: 5 Transport Errors: 0".

但不仅在硬错误情况下,而且如果以上 2 个错误(硬错误、传输错误和软错误)中的任何一个都需要显示。

答案1

如果我理解正确的话,您正在寻找这样的东西:

$ iostat -En | nawk '/Hard Errors:/{if($4>2 || $7>2 || $10){
   print "Iostat warning on system1, hard, soft or transfer errors > 2:\n"$0}}'

由于Linux版本iostat没有-E-n选项,所以我无法检查这一点。如果它没有达到您想要的效果,请发布您的iostat命令的输出,以便我可以看到要解析的内容。

相关内容