linux – 有没有办法刷新正在运行的进程的stdout

我有一个长时间运行的进程,stdout重定向到一个文件.例如.: ./my-script.sh file.txt 部分stdout仍然被缓存,但我想将其刷新到文件,以便更早地查看结果.有办法吗? 缓存由libc处理.您可以使用stdbuf命令更改缓冲区大小: stdbuf -o0 ./my-script.sh file.txt –

我有一个长时间运行的进程,stdout重定向到一个文件.例如.:

./my-script.sh > file.txt &

部分stdout仍然被缓存,但我想将其刷新到文件,以便更早地查看结果.有办法吗?

解决方法

缓存由libc处理.您可以使用stdbuf命令更改缓冲区大小:

stdbuf -o0 ./my-script.sh > file.txt &

-o0将stdout的缓冲区大小设置为0.可能你也想要-e0用于stderr.

作者: dawei

【声明】:西安站长网内容转载自互联网,其相关言论仅代表作者个人观点绝非权威,不代表本站立场。如您发现内容存在版权问题,请提交相关链接至邮箱:bqsm@foxmail.com,我们将及时予以处理。

为您推荐

联系我们

联系我们

0577-28828765

在线咨询: QQ交谈

邮箱: xwei067@foxmail.com

工作时间:周一至周五,9:00-17:30,节假日休息

返回顶部