我需要从下面的数据中提取 Kb / s 列值。
read: ops/s Kb/s Kb/op retrans avg RTT (ms) avg exe (ms)
11.888 919.508 77.347 -2 (-0.0%) 3.486 3.607
我正在尝试打印awk'{print $ 3}',但它将列名称打印为Kb / s,但打印值来自Kb / op。
Kb/s
77.340
你能告诉我如何获得所需的价值。即Kb / s = 919.452
-Thanks。
答案 0 :(得分:2)
这是因为您的标头有一个额外的列与数据集进行比较。尝试:
awk '$2 ~/^[0-9]+/ {print $2}'
答案 1 :(得分:2)
你可以像@xvan评论那样“修复”输入:
sed 's/^read//' inputfile | awk '{print $2}'
或指示awk选择正确的字段:
awk '{print ($1=="read:")? $3 : $2}' inputfile