Bash脚本显示终端中的更新信息

mun*_*nch 3 bash

我正在尝试编写一个显示python脚本输出的bash脚本.我希望输出每秒刷新一次,所以我的脚本看起来像这样(run.sh):

#!/bin/bash

export INTERVAL=1
export SCRIPT="something.py"

while [ true ]
    do
    clear
    python ${SCRIPT}
    sleep ${INTERVAL}
    done
Run Code Online (Sandbox Code Playgroud)

然而,当python脚本工作时,屏幕会闪烁(涉及一些Web访问).我怎样才能使这个更复杂,等待脚本完成之前清除我曾经拥有的东西?

提前致谢!

Dav*_*Yaw 6

使用手表.它只会在整个脚本完成后更新屏幕,并且它会处理诸如清除屏幕和处理大于单个屏幕的输出之类的事情.

watch -n ${INTERVAL} 'python ${SCRIPT}'

如果您想查看watch如何处理长时间运行的任务的示例,请执行以下操作:

watch 'date; echo; echo Long running task...; sleep 3; echo; date'