Para limpar a tela do console e o buffer de rolagem ao executar o PuTTY, isso funciona para mim:
echo -en "\ec\e[3J"
Isso é na verdade 2 sequências "Esc" que agem de forma independente ... elas podem ser usadas em qualquer ordem:
# clears the console screen, but not the scrollback buffer
# this is actually the escape code to "reset" the terminal
echo -en "\ec"
# clears the scrollback buffer, but not the console screen
# screen content remains, and cursor position remains at its last position
echo -en "\e[3J"
O uso de echo -en "\ec"
, que redefine o terminal, pode alterar algumas das suas outras configurações de terminal. Em vez de "Reset", você poderia fazer isso:
# position the cursor to "Home" (Top Row, First Column)
echo -en "\e[H"
# Erase down: clear the screen from the cursor down to the bottom of the screen.
echo -en "\e[J"
# Note: this is supposed to clear the screen and position the cursor to home,
# but it didn't work like that for me. It cleared the entire screen (above and
# below the cursor), but left the cursor at its last position.
echo -en "\e[2J"
# putting everything together
echo -en "\e[H\e[J\e[3J"
Você pode colocar isso em um shell script e funciona muito bem.
Caso haja algumas dependências do sistema:
Estou usando o PuTTY Connection Manager (versão 0.7.1 BETA (build 136)), com o PuTTY (versão 0.60).
Digitação:
echo \"$TERM\"; /bin/sh --version
relatórios:
"xterm"
GNU bash, version 4.1.2(1)-release-(x86_64-redhat-linux-gnu) ...