首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将输出重格式化为批处理模式下命令的每间隔一行。

将输出重格式化为批处理模式下命令的每间隔一行。
EN

Stack Overflow用户
提问于 2016-05-02 05:41:17
回答 1查看 39关注 0票数 0

我使用perf stat记录一些硬件计数器,它有一种批处理模式,在这种模式中,它每1s (或任何间隔)打印计数器值。我希望在一行中输出一个间隔,而不是多行,如下所示:

代码语言:javascript
复制
#           time             counts events
     1.000650887        4015.442880 task-clock (msec)         [100.00%]
     1.000650887                214 context-switches          [100.00%]
     1.000650887                  2 cpu-migrations            [100.00%]
     1.000650887                 14 page-faults
     1.000650887         58,447,833 cycles                    [83.19%]
     1.000650887         50,476,562 stalled-cycles-frontend   [83.26%]
     1.000650887         18,469,093 stalled-cycles-backend    [66.85%]
     1.000650887         13,861,731 instructions              [83.56%]
     1.000650887          3,963,967 branches                  [83.60%]
     1.000650887            180,104 branch-misses             [83.21%]
     2.004854486        4003.706096 task-clock (msec)
     2.004854486                245 context-switches
     2.004854486                  0 cpu-migrations
     2.004854486                 30 page-faults
     2.004854486         60,750,234 cycles                    [83.27%]
     2.004854486         38,491,129 stalled-cycles-frontend   [83.26%]
     2.004854486         20,561,260 stalled-cycles-backend    [66.95%]
     2.004854486         15,651,369 instructions              [83.36%]
     2.004854486          3,826,936 branches                  [83.25%]
     2.004854486            183,319 branch-misses             [83.27%]

这样,它就可以保存为一个csv文件,每个计数器值作为一个单独的行间隔。有什么简单的方法吗?

类似于:

代码语言:javascript
复制
task-clock, context-switches, page-faults, cycles, instructions, branches
4105, 214, 14, 58447833, 13861, 3963967
4003, 245, 30, 60750234, 15651369, 3826936

我的perf版本是: 3.13.11.10

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-05-02 06:01:04

我会将perf stat的输出传递给如下内容

代码语言:javascript
复制
awk '/task-clock/{printf("%d ", $2);} /page-faults/{printf("%d ", $2);} /branch-misses/{printf("%d\n", $2);} '

我没有在这里添加所有字段和标题。添加的内容非常明显。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/36975623

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档