我读过的重定向时stdout
和stderr
同一个文件使用2>&1
,stdout
通常,嵌段缓冲,而stderr
不是缓冲。
如果写入了很长的一行stdout
,需要两次单独刷新缓冲区,是否会发生一行从stderr
中间滑落?像这样的东西:
stdout: aaaaaaaa.....really long line......aaaaaaaaaaaa<newline>
stderr: eee<newline>
combined: aaaaaaaaaaaaaaaaeee<newline>
aaaaaaa<newline>
Run Code Online (Sandbox Code Playgroud)