Unix进程'CPU使用率

 PengJin05 发布于 2023-02-07 14:15

我需要确定unix进程的CPU使用率......所以,我想写一个bash脚本,它将启用计时器,运行一些进程,停止计时器.我必须知道该过程如何使用CPU.然后与另一个进程进行比较 - 其中哪些进程使用较少的CPU.试过这个帖子,但是使用c ++,我想在bash中做到这一点.谢谢.

1 个回答
  • 你想"启用计时器,运行一些进程,停止计时器".Bash为时间进程提供内置命令,方便调用time.例如,要查找date命令运行所需的时间:

    $ time date
    Mon Dec 30 12:16:22 PST 2013
    
    real    0m0.003s
    user    0m0.000s
    sys     0m0.004s
    

    上面的第一行输出是date命令的结果.最后三个来自time告诉您date命令运行的时间(实际)以及在用户模式和系统模式下花费的CPU时间.

    time还可以选择显示CPU使用率,计算为用户和系统时间之和除以实时.使用以下环境变量TIMEFORMAT,我们获得看起来像默认值的输出,除了添加一行显示CPU使用百分比:

    $ TIMEFORMAT=$'\nreal\t%3lR\nuser\t%3lU\nsys\t%3lS\nCPU\t%P%%'
    $ time sleep 1
    
    real    0m1.003s
    user    0m0.000s
    sys     0m0.000s
    CPU     0.00%
    

    该字符串的$'...'格式为,以便将\n其解释为换行符和\t制表符.如果一个人不想要换行符和标签符号,那么就不需要`$'...'.例如,以下内容将生成相同的信息,但在一行中:

    TIMEFORMAT='real=%R  user=%U sys=%S CPU=%P%%'
    

    在上面的TIMEFORMAT规范中,%P以百分比形式提供CPU使用率.为了说明,我还通过删除"3"和"l"选项简化了上面的最后一个规范; 因此,时间以默认精度和秒显示,而不是以更长的分钟和秒形式显示.有关更多信息,请参阅TIMEFORMAT环境变量的说明man bash.

    2023-02-07 14:17 回答
撰写答案
今天,你开发时遇到什么问题呢?
立即提问
热门标签
PHP1.CN | 中国最专业的PHP中文社区 | PNG素材下载 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有