如何获取zsh中命令的执行毫秒时间?

如何获取zsh中命令的执行毫秒时间?

唯一time打印命令的第二次执行。

如果有像 IPython 强大的timeit魔法命令这样的解决方案,那就太好了。

答案1

zshtime使用TIMEFMT变量来控制格式。默认情况下,这就是%J %U user %S system %P cpu %*E total,它产生以下结果。

$ time sleep 2
sleep 2 0.00s user 0.00s system 0% cpu 2.002 total

产生毫秒精度(至少对于total),所以也许您的系统有不同的默认设置(滞后发行版?),或者修改了TIMEFMT.

看看手册页了解可能的格式。我在中使用以下内容~/.zshrc

TIMEFMT=$'\n================\nCPU\t%P\nuser\t%*U\nsystem\t%*S\ntotal\t%*E'

产生以下结果。

$ time sleep 2 

================
CPU     0%
user    0.003
system  0.000
total   2.006

答案2

默认情况下, ipython timeitmagic 命令将打印语句多次执行的统计报告。 zsh 保留字time只会运行您的命令一次。

当您只关心测量外部命令(而不是内置命令和函数)的执行时间时,您可以使用超精细。它是一个为您重复执行命令并打印一些统计信息的程序。

相关内容