Bash:完全清除屏幕,包括提示

时间:2013-10-10 10:53:15

标签: bash shell

我有一个从文件中读取输入的bash代码。

for line in $(cat python.py); do
read input
echo $input;
echo "[$line]"
done

我想要的是在完整清晰的终端屏幕中读取输入,包括提示,就像在VIM中一样。

3 个答案:

答案 0 :(得分:4)

也许您可以通过更改环境变量PS1来清除提示。 像

这样的东西
OLDPS1=$PS1
PS1=
clear

应该清除你的屏幕,让你输入你想要的任何东西,没有任何提示。完成后用

恢复变量PS1
PS1=$OLDPS1

答案 1 :(得分:1)

export PS1="";printf "\033[2J";printf "\033[0;0H"

答案 2 :(得分:0)

你可以这样做:

while read line; do
   read input
   echo $input;
   echo "[$line]"
   clear
done < python.py

请参阅循环结束时的clear以清除终端。

也不需要redundant cat,因为可以从stdin重定向读取文件。