我有一个像这样的字符串
Cpu(s): 1.9%us, 2.1%sy, 1.5%ni, 94.5%id, 0.8%wa, 0.0%hi, 0.1%si, 0.0%st
Run Code Online (Sandbox Code Playgroud)
它代表我的unix盒子的CPU使用率.
现在我需要应用awk和sed(我认为)来提取CPU的当前负载.我想从字符串中提取'us','sy','ni'值,然后我想总结它们.
该脚本应该返回5.5(1.9 + 2.1 + 1.5)...你知道如何实现这个目标吗?
非常感谢
好吧,你只需要一个awk命令.不需要其他工具
$ str="Cpu(s): 1.9%us, 2.1%sy, 1.5%ni, 94.5%id, 0.8%wa, 0.0%hi, 0.1%si, 0.0%st"
$ echo $str | awk '{print $2+$3+$4+0}'
5.5
Run Code Online (Sandbox Code Playgroud)