在 运行 命令时获取实时机器使用数据

Get real-time machine usage data while running commands

假设我想在终端中 运行 一些脚本(或者我只是硬编码到其中的一些 command/snippet )。 我想知道它是否存在用于分析机器使用情况的实时统计信息的工具(%CPU、执行速度、专用内存等)我可以管道我的脚本或类似的东西,所以我可以在脚本输出后立即在输出中获取这些数据。

我没有在 Google 中搜索过,也没有在 SO 问题中搜索过。我正在使用 Ubuntu 14.04

编辑: 使用手动指示,我尝试了这种方式:

:~$ time -f "CPU %P%%\nMax RAM %M\n" ./myscript.sh
-f: command not found
/*
  normal output
*/
:~$

也尝试过:

:~$ time --format="CPU %P%%\nMax RAM %M\n" ./myscript.sh
--format: command not found
/*
  normal output
*/
:~$

另外,作为孤注一掷的措施:

:~$ time --verbose ./myscript.sh
--verbose: command not found
/*
  normal output
*/
:~$

没有任何效果。我不明白为什么 args 被拒绝。

尝试 /usr/bin/time 或更简单的内置版本 bash time

time -p sh script_name

O/p

实际 13.37 用户 0.00 系统 0.82

在这里,我留下了很久以前@mefju 和@Poo 提供的帮助所获得的结果:

改用外部应用程序 /usr/bin/time(这与 bash 内置 time 不同,如上文 JID 所述)解决了 args 拒绝问题。这种方式对我很有效:

:~$ /usr/bin/time -f "CPU: %P\nMax RAM: %M kB\nTime: %e s\nSwap cnt: %W" ./myscript.sh

结果输出:

CPU: 63%
Max RAM: 1432 kB
Time: 0.45 s
Swap cnt: 0