如何确定shell脚本的执行时间,CPU和内存利用率(test.sh)?

问题描述:

我需要知道我编写的shell脚本的完整执行时间,CPU和内存利用率。我想执行从同一个脚本输出CPU和内存使用率的命令。我更感兴趣的是实时CPU利用率,而不是脚本完成执行时的平均时间CPU利用率。这是否可行? OS - FreeBSD和linux如何确定shell脚本的执行时间,CPU和内存利用率(test.sh)?

请帮忙。

+1

您可以使用'time' util获取执行时间。试试'time sh test.sh'。 –

+1

你需要多久看一下CPU的瞬时利用率?如果你只是需要知道它的需求,键入Control-T(在freebsd上)可能就足够了。 –

+0

嗨马克, 感谢您的回复,当脚本完成执行时,我需要知道确切的CPU利用率。因此,如果脚本运行了10秒钟,那么在10秒钟内CPU占用率是多少? – Abhishek

我从你的问题中了解到你想知道脚本使用了多少CPU。然后在运行脚本之后,捕获该脚本/进程的进程ID,并使用 ps -p -o%cpu,%mem命令查看CPU利用率

+0

感谢您的回复Anupam,我的脚本很难运行20-25秒,我无法使用“top”获取进程ID,我甚至尝试将进程名称分配给我的脚本,但并没有这样做。任何指针都会有帮助。 – Abhishek

+0

Ohk。只需添加ps -ef |在第二行的文件中使用grep脚本名称。这将捕获进程ID,并使用ps -p pid -o%cpu,%mem添加此命令。然后在脚本的末尾使用&使其在后端运行。 –