gpt4 book ai didi

macos - 过滤 time(1) 输出以仅获取时间值

转载 作者:行者123 更新时间:2023-12-01 07:38:35 24 4
gpt4 key购买 nike

如何在 OS X 下过滤特定时间命令的输出值?我试过了

➜  ~  (time ls -la)| grep system|awk "{print $4, $6, $8, $10}"
ls -G -la 0.01s user 0.01s system 16% cpu 0.102 total

但是我只想取数字,在本例中为“0.01 0.01 16 0.102”谢谢

编辑:Paul 指出,输出可能 go to stderr所以我的解决方案是将输出“重定向”到标准输出并继续破解字符串:)

(time ls -la) 2>&1 | grep system | tr -dc '[:digit:]. '

最佳答案

当使用 zsh 内置 time 时,设置变量 TIMEFMT 来控制输出(参见 man zshparam)。

要在没有字母字符串的情况下重现默认输出:

TIMEFMT='%*E %*U %*S %P'

例如,星号会阻止 s 的输出“秒”。

当然,如果您真正感兴趣的话,您可以将其限制在一个特定的领域。

重定向时间的输出以在变量中捕获它或进一步处理它:

duration=$({ time ls -la >/dev/null; } 2>&1)

我将命令的输出重定向到 /dev/null,但如果您想捕获它,只需删除该重定向即可。

关于macos - 过滤 time(1) 输出以仅获取时间值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4303316/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com