我要使用 sar 命令监视磁盘 IO,要求在输出 1) 如果任何磁盘的 %busy 高于 80%,如果所有磁盘都低于阈值,则磁盘名称和值应显示在第一行,然后输出应仅显示 'ok ' 2) 如果任何磁盘的 %busy 高于 60% 但低于 80%,如果所有磁盘都低于阈值,则磁盘名称和值应显示在第二行,则输出应仅显示 'ok'
我已经准备了下面的脚本,但它不能正常工作是显示 1 个磁盘的一些磁盘未找到错误,只显示'ok'
你能帮我修复我的脚本并帮助我实现我的目标吗
这是我的脚本
`bash-3.00$ cat diskio.sh
#!/bin/bash
a=`sar -d 2 2 |sed -n '/Average/,$ {s/Average//g;p;}'`
e=`$a|awk 'NR> 1{ if ($2 >80) { print $1, $2; f=1; } }
END { if (!f) print "ok" }'`
w=`$a|awk 'NR> 1{ if ($2 <80 && $2 >60) { print $1, $2; f=1; } }
END { if (!f) print "ok" }'`
echo $e
echo $w`
下面是输出
`bash-3.00$ diskio.sh
./diskio.sh: line 3: hdisk18: command not found.
./diskio.sh: line 4: hdisk18: command not found.
ok
ok`
TIA 问候,tnt5273