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

我有一个长时间运行的进程,stdout重定向一个文件.例如.:
./my-script.sh > file.txt &

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

解决方法

缓存由libc处理.您可以使用stdbuf命令更改缓冲区大小:
stdbuf -o0 ./my-script.sh > file.txt &

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

相关文章

Linux中的ARP防火墙主要用于防御ARP欺骗攻击,其效果取决于多...
insmod和modprobe加-f参数导致Invalid module format错误 这...
将ArchLinux安装到U盘 几个月前入门Arch的时候上网搜了不少安...
1、安装Apache。 1)执行如下命令,安装Apache服务及其扩展包...
一、先说一下用ansible批量采集机器信息的实现办法: 1、先把...
安装配置 1. 安装vsftpd 检查是否安装了vsftpd # rpm -qa | ...