实时更新输出到unix

时间:2013-10-30 15:20:56

标签: perl unix

我确定这很常见,但我在google上找不到任何东西......

我正在使用Perl,我在UNIX中运行我的程序。在我的程序中的某一点上,我打印的数字表示找到的正则表达式匹配的数量。无论如何输出就是这样......

1
2
3
4 
5

等。

它最终是一个很长的列表,所以如果你想要到达输出的顶部或底部,你必须做大量的滚动......

我的问题是如何让列表输出实时更新,因此列表输出将保持在一行。以便1更改为2更改为3等。

感谢您的帮助!

2 个答案:

答案 0 :(得分:5)

这取决于很多事情,但字符串中的\r应该将光标返回到行的开头。

答案 1 :(得分:2)

首先,不要忘记在Perl中使用以下内容解压缩输出:

$|=1;

然后尝试:

$(tput clear);

将光标置于终端窗口的顶部。

尝试输入:

tput clear

进入终端,查看是否清除屏幕并将光标置于左上角。如果没有,请尝试输入:

clear

清除屏幕并将光标移至“Home”位置。