覆盖具有多行输出的 bash 命令的终端输出?

jon*_*rry 1 unix bash

我有一个 bash 命令,我想每秒运行一次并保持输出显示在屏幕上。我可以执行以下操作:

while "true"; do foo; sleep 1; done
Run Code Online (Sandbox Code Playgroud)

但这会产生分散注意力的滚动。或者,我可以执行以下操作:

while "true"; do clear; foo; sleep 1; done
Run Code Online (Sandbox Code Playgroud)

但这会导致输出在清除和写入时闪烁。有没有一种好方法可以让命令的输出覆盖终端上的内容?

Nea*_*eal 5

看看 watch 命令;就像是

看 -n 1 foo