【发布时间】:2011-04-17 06:21:45
【问题描述】:
我想制作一个仅输出 time 命令的实时值的脚本,以便绘制结果。例如time command 输出
real 1m0.001s
user 1m0.000s
sys 0m0.001s
我想写一个输出的脚本
60.001
如何从“时间”命令中获取实时值(以秒为单位)?
【问题讨论】:
我想制作一个仅输出 time 命令的实时值的脚本,以便绘制结果。例如time command 输出
real 1m0.001s
user 1m0.000s
sys 0m0.001s
我想写一个输出的脚本
60.001
如何从“时间”命令中获取实时值(以秒为单位)?
【问题讨论】:
如果您使用 Bash 内置 time,请将 TIMEFORMAT 变量设置为 %R:
$ TIMEFORMAT=%R
$ time sleep 1
1.022
【讨论】:
%0lR(更易读)慢执行命令(见stackoverflow.com/questions/3683434/…)
unset TIMEFORMAT 恢复原始格式
time 可以采用可选的--format 或-f 参数,但您必须使用时间命令的完整路径/usr/bin/time
/usr/bin/time -f "%e" sleep 3
3.00
如果没有路径,它将是use the time command of the shell,它将所有参数视为命令,因此您将获得-f: command not found。
【讨论】:
\time -f "%e" sleep 5 告诉我 bash: time: command not found
which -a time 你可能会看到 shell 是首选的,这就是为什么在某些情况下使用二进制文件的完整路径的原因案例。
如果您写\time,您将强制不使用内置的 bash。
这样\time -f '%e' command就完成了。
【讨论】:
或者,使用/usr/bin/time 或查看类似问题
Using time command in bash script。
【讨论】: