多线终端进度指示器?

时间:2010-12-31 14:16:59

标签: php

在终端中,如果我输出某种就地的单行进度指示器,\r就可以了:

while (1) { echo "progress indication\r"; }

但是,我有一个真正应该是多线的进度指示器。由于\r只返回到当前行的开头,我想要一些可以向上移动几行的东西。是否有控制字符/功能允许我退回终端中的线路?

编辑:如果我不完全清楚,我希望有一个与\v大致相反的东西,垂直标签,它将终端光标向下移动一行。

1 个答案:

答案 0 :(得分:2)

没有控制字符可以返回上一行,但是根据TERM =类型,ANSI转义可能会有效。

echo -e "\033[2A"

以下列表可能更有帮助:http://en.wikipedia.org/wiki/ANSI_escape_code以及在http://www.linuxselfhelp.com/howtos/Bash-Prompt/Bash-Prompt-HOWTO-6.html

中的用法