![测量单个命令 CPU/内存使用情况的工具?](https://linux22.com/image/211287/%E6%B5%8B%E9%87%8F%E5%8D%95%E4%B8%AA%E5%91%BD%E4%BB%A4%20CPU%2F%E5%86%85%E5%AD%98%E4%BD%BF%E7%94%A8%E6%83%85%E5%86%B5%E7%9A%84%E5%B7%A5%E5%85%B7%EF%BC%9F.png)
是否有任何有用的工具可以测量单个命令的 CPU/内存使用情况?
我想要这样的东西:
cpu_mem_perf some_executable args1 args2
执行后会cpu_mem_perf
打印该命令的CPU/Memory使用情况,即正在运行的进程和fork出来的进程的some_executable args1 args2
CPU/Memory使用总量some_executable args1 args2
some_executable args1 args2
答案1
只需使用GNU 版本时间公用事业具有一些自定义格式:
类似的东西time --format="%E %M" some_executable
可能基本上适合您的需求,但请检查手册页(从Gnu版本段落),以便发现打印许多其他更适合您的 cpu 和内存使用详细信息的可能性。
顺便说一句,报告将包括 some_executable 的子活动。
请注意,几乎可以肯定可以通过包管理器提供该软件。
关于一些CPU使用情况》顶峰“ 价值,(以下是OP的评论):
GNU 时间实用程序不报告顶峰需要实用程序定期对 /proc 进行采样的值顶部-类似的方式。
不用说,因为……这个值已经是高度可预测的,即使不确定(因为任何人有时都可以立即使用顶部):100%
这是合乎逻辑的,因为根据设计,一旦安排了一项任务,它将使用 100% 的 CPU 来运行该任务。
根据OP的确切需要,更有意义的是一些平均的由格式字符串的 %P 参数给出。