如何保存命令的输出及其执行的“时间”?

时间:2018-12-03 22:24:47

标签: linux bash shell

我正在尝试执行命令并获取其输出以及运行该命令所花费的时间

TIMEFORMAT='real %3R'
VAR1=$( time command );

当我回显VAR1时,它显示时间和命令输出。但是我似乎无法提取时间子字符串。我已经尝试了grep,sed和cut。任何提示,将不胜感激。

谢谢。

2 个答案:

答案 0 :(得分:0)

您得到的输出是什么,您正在使用的bash是什么? 在我的Mac上,我得到的时间实际上不是输出的一部分,而是输出。

$ TIMEFORMAT='real %3R'
$ time ls|tail -0
real 0.018
$ VAR=$(time ls|tail -0)
real 0.006
$ echo $VAR

我正在使用 GNU bash,版本3.2.57(1)-发行版(x86_64-apple-darwin17)

答案 1 :(得分:0)

如果还没有,请尝试使用time实用程序的外部版本。有一个--output = file选项,可让您将统计信息与程序输出分开保存。典型位置是:/ usr / bin / time