PuTTY: desmarque a rolagem da linha de comando

23

Quando me conecto ao meu servidor via PuTTY, posso limpar a tela visível com o comando clear .

No entanto, ainda posso rolar para trás na GUI do PuTTY para ver as coisas antigas. Estou ciente do recurso Limpar Scrollback do PuTTY, mas isso requer cliques do mouse.

Gostaria de executar exatamente a mesma operação "Limpar Scrollback", mas a partir da linha de comando.

É possível?

Eu leio este site , que parece indique isso.

No entanto, minhas experiências falharam. Por exemplo:

printf '3[3J'

Não faz nada para mim.

Eu posso não estar entendendo o significado de CSI 3 J nesse segundo link, embora ...

    
por jwd 22.02.2013 / 01:31

5 respostas

29

A sequência CSI 3 J para limpar o buffer de rolagem foi adicionada ao PuTTY 0.59. (Na página de solicitação de desejo para este recurso, consulte o "fixo-em" linha, ou vá para o PuTTY muda página e procure por CSI 3 J .)

Como jwd mencionou, você pode inserir printf '3[3J' em uma linha de comando para enviar essa sequência para o PuTTY. Esteja ciente de que isso apenas limpa o buffer de rolagem, mas não limpa a tela. Se você tem uma barra de rolagem, você pode realmente rolar, então use esta seqüência, você verá a barra de rolagem se tornar desativada porque de repente não há nada disponível para rolar. Mas a tela exibida atualmente permanece no lugar.

Como jwd mencionou, você pode limpar a tela e o buffer de rolagem usando clear && printf '3[3J'

    
por 22.02.2013 / 04:28
11

Se você está acostumado, como eu, a usar Ctrl + L para a opção Reset terminal disponível no menu do sistema do PuTTY, então você pode achar útil ativar Configuration -> Window -> Behavior -> "System menu appears on ALT-Space" .

Então quando você apertar Alt + Space , a opção para "Clear scrollback" é acionada por L (minúscula; sem Shift). Assim, reset + clear torna-se a combinação encantadoramente mnemônica de Ctrl + L e Alt + Espaço L sem qualquer incômodo de mouse ou desordem em seu shell história.

    
por 03.09.2015 / 23:42
5

Crie um arquivo de script e coloque-o em uma pasta incluída no caminho:

$cat > /usr/local/bin/cls
#!/bin/bash
clear
printf '3[3J'

Pressione CTRL + d para salvar e sair

Alterar permissão no arquivo:

chmod a+x /usr/local/bin/cls

Agora você pode usar o cmd cls: -)

    
por 15.03.2015 / 13:46
1

A solução para mim foi transmitir os caracteres '\ 033 \ 143':

printf("33");

Isso limpa a tela do terminal e coloca o cursor de volta no canto superior esquerdo.

    
por 31.01.2017 / 16:58
0

Existe uma opção em massa onde você pode desmarcar o comportamento padrão de rolagem para trás. Basta desmarcar a opção "Push erased text into scrollback".

Depois disso, quando você emitir o comando clear, ele apagará a tela e não colocará o conteúdo da tela anterior na rolagem para trás.

    
por 10.08.2018 / 16:56

Tags