我有一个计划,我正在计时,让我们说some_bin
。我运行time命令,它产生如下输出:
time -p some_bin --some-args=args
real 1.09
user 1.08
sys 0.00
我想获得该程序正在使用的1.09实时。我试图在这种情况下使用awk模式匹配real
上的第一行,然后提取时间。
到目前为止我尝试过的所有东西都无法奏效。关于如何实现这一目标的任何想法?
答案 0 :(得分:1)
这两个命令都可以自己提供实时的
/usr/bin/time -f "%e" MYCOMMAND
TIMEFORMAT='%2R'; time MYCOMMAND
TIMEFORMAT
还允许您更改时间输出的精度。
/usr/bin/time -f "%e" sleep 2
2.00
TIMEFORMAT='%2R'; time sleep 2
2.00
答案 1 :(得分:0)
time
命令,并且写在stderr上。您可以像这样使用它:
( time -p some_bin --some-args=args ) |& awk '/real/{print $2}'
您也可以使用:
( time -p some_bin --some-args=args ) 2>&1 | awk '/real/{print $2}'