对于基准脚本,我需要在一些操作后立即提取 iowait %。
目前,我找到的最好方法是:IOWAIT=top -bn2 | awk '$1~/Cpu/ {print $6}' | sed -n '2p' | tr -d '%wa,'
正确的输出类似于 2.1:
首先,如果我没有精确“-bn2”,我不知道为什么,如果我只捕获 1 次,它总是 0.1%。所以我捕获了两次,然后我 awk 获取 iowait 字段,然后我 sed 第二行,然后我删除了“%wa”
仅供参考,这是输出top -bn2 | grep Cpu
Cpu(s): 2.8%us, 0.4%sy, 0.0%ni, 96.6%id, 0.1%wa, 0.0%hi, 0.0%si, 0.0%st<br>
Cpu(s): 0.2%us, 2.9%sy, 0.0%ni, 87.1%id, 9.5%wa, 0.0%hi, 0.3%si, 0.0%st
我的问题如下:当我得到一列 100.0%(例如空闲)时,它改变了列号,所以我的 awk 不再工作,我得到“0.0%hi”字段。
我的问题如下:
- 如何告诉 awk 使用“%wa”进入列?
如果有人对我想做的事情有最好的方法,我当然非常愿意接受建议!
谢谢