Sup*_*tar 5 performance zsh timing
我最近安装了 macOS 10.15 Catalina 的开发者测试版,它默认使用 ZSH 而不是 BASH。
我已time作为二进制文件安装在 中/usr/bin/time,并使用它来计时我的一些脚本。然而,ZSH 将此作为内置命令。我的问题是我通常用time -p我喜欢的方式格式化其输出,但这在 ZSH 上似乎不可能。
根据man time:
Run Code Online (Sandbox Code Playgroud)-p The output is formatted as specified by IEEE Std 1003.2-1992 (``POSIX.2'').
这似乎不适用于 ZSH 的内置,并且 ZSH 似乎没有使用我安装的time二进制文件:
-p The output is formatted as specified by IEEE Std 1003.2-1992 (``POSIX.2'').
Run Code Online (Sandbox Code Playgroud)
is-mbp-bleggiero% which time
time: shell reserved word
is-mbp-bleggiero% time echo hello; echo $?
hello
0
is-mbp-bleggiero% time -p echo hello; echo $?
zsh: command not found: -p
-p echo hello 0.00s user 0.00s system 74% cpu 0.001 total
127
Run Code Online (Sandbox Code Playgroud)
这对我来说看起来很奇怪;它似乎包含我想要的信息(用户与系统和总计,格式为秒),但它也不运行该命令,而是抱怨它不存在。
/usr/bin/time -p如果您想使用此选项,可以致电,或者=time -p
zsh 内置时间不带任何选项 ( man zshmisc)。
但您可以export TIMEFMT使用您想要的格式,包括带有\n.
echo $TIMEFMT看看现在是什么情况