我想知道是否有可能告诉bash所有的调用echo或者printf应该分别跟随fflush()stdout/stderr 的后续调用?
一个快速而肮脏的解决方案是编写我自己的printf实现,并使用它来代替内置的,但它发生在我身上,我可能不需要.
我正在编写几个同时运行的构建脚本,为了调试需求,我真的需要看到它们按顺序写入的消息.
pix*_*eat 11
如果命令使用stdio并连接到终端,则每行都会刷新它们.否则你需要在管道中的命令上使用类似stdbuf的东西 http://www.pixelbeat.org/programming/stdio_buffering/
tl; dr:而不是printf ...尝试放入脚本stdbuf -o0 printf ..,或者stdbuf -oL printf ...