在Linux / Bash中测量程序执行时间的问题

时间:2011-09-05 20:58:32

标签: linux bash time runtime

希望不是this question ...

的欺骗

我正在尝试使用时间函数确定指定程序运行时的曲线。

我想要做的是自动执行此过程,以便在Excel中绘制数百个数据点,但是在Linux终端和bash脚本中运行时,我得到的输出不同。

以下是我从终端运行时获得的信息:

time program_1 500
> 0.004u 0.000s 0:00.00 0.0%   0+0k 0+0io 0pf+0w

这是我的bash脚本(第一个参数是程序,第二个是数字)

#!/bin/bash

time $1 $2

这里......我的输出是不同的,即使我以字面方式回应上述语句,它似乎是完全相同的调用。

> sh runner.sh program_1 500
> 0.00user 0.00system 0:00.00elapsed 400%CPU (0avgtext+0avgdata 3488maxresident)k0inputs+0outputs (0major+275minor)pagefaults 0swaps

为什么会有差异?

1 个答案:

答案 0 :(得分:3)

嗯,实际上有2个time命令,其中一个命令构建在bash中。对于内置man bash/usr/bin/time安装的help time {{1}}。使用脚本中的绝对路径来获得相同的行为。