gpt4 book ai didi

bash - grep、tee 和 sleep 一起玩得不好

转载 作者:行者123 更新时间:2023-11-29 09:26:02 24 4
gpt4 key购买 nike

(echo foo && sleep 1 && echo bar) | grep -P . | tee /dev/null

上面的代码是我能想到的问题的最小案例。预期的行为是 foo 会被回显,一秒钟过去,然后 bar 会被回显。

实际发生的是一秒钟过去,然后 foobar 同时被回显。如果您删除 其中一个 greptee 命令(或两者,显然),正确的行为就会发生。但将它们放在一起则不然。

我认为这是某种缓冲问题,但我不知道如何解决它。这对我来说发生的实际脚本运行了很长一段时间,直到最后我才看到任何日志消息。哈! :(

最佳答案

Etan 的评论促使我查看 grep 的手册页,我找到了 --line-buffered 标志。添加解决了问题

(echo foo && sleep 1 && echo bar) | grep --line-buffered -P . | tee /dev/null

关于bash - grep、tee 和 sleep 一起玩得不好,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27285287/

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