Bash 如何从';时间';指挥部?
我想制作一个脚本,只输出time命令的实时值,以便绘制结果。例如Bash 如何从';时间';指挥部?,bash,scripting,shell,Bash,Scripting,Shell,我想制作一个脚本,只输出time命令的实时值,以便绘制结果。例如时间命令输出 real 1m0.001s user 1m0.000s sys 0m0.001s 我想写一个脚本,输出 60.001 如何以秒为单位从“time”命令中获取实时值?time可以采用可选的--format或-f参数,但必须使用time命令的完整路径,/usr/bin/time /usr/bin/time -f "%e" sleep 3 3.00 如果没有路径,它将只处理所有参数作为命令,因此您将得
时间命令
输出
real 1m0.001s
user 1m0.000s
sys 0m0.001s
我想写一个脚本,输出
60.001
如何以秒为单位从“time”命令中获取实时值?
time
可以采用可选的--format
或-f
参数,但必须使用time命令的完整路径,/usr/bin/time
/usr/bin/time -f "%e" sleep 3
3.00
如果没有路径,它将只处理所有参数作为命令,因此您将得到一个
-f:command not found
或者,使用/usr/bin/time
或查看类似问题.如果您使用的是Bash内置的
time
,请将TIMEFORMAT
变量设置为%R
:
$ TIMEFORMAT=%R
$ time sleep 1
1.022
如果编写
\time
,则强制不使用bash内置的time。
因此,使用
\time-f“%e”命令
您就完成了。谢谢!我喜欢%0lR
对于执行速度较慢的命令(请参阅)unset TIMEFORMAT
以恢复原始命令,这是最好的(可读性更好的)formating@frederik-b它在Ubuntu 19.04上不运行\time-f“%e”sleep 5
告诉我bash:time:command not found
它直接与gnu time一起工作,但不是shell内置的time命令,如果您运行which-a time
,您可能会看到shell是首选的,这就是为什么在某些情况下使用二进制文件的完整路径是可行的。