如何通过管道减少无缓冲?

如何通过管道减少无缓冲?

我正在尝试显示进度,并使其可以在以下位置使用less

while true; do echo -n .; sleep 1; done | less

有办法让它发挥作用吗?

答案1

echo循环中的输出while始终是无缓冲的。如果删除该-n选项,您将看到每秒出现包含点的线条。

似乎less总是尝试读取完整的行,并且在到达行尾或文件末尾之前不会显示它。似乎没有办法改变这一点。

相关内容