O que você faz quando um comando inunda seu terminal com muita saída?

4

Estou tentando resolver um problema comum: quando o SSH entra em servidores remotos, geralmente faço coisas que produzem muito mais resultados do que eu esperava. Por exemplo, grepping um arquivo de log grande com um padrão que acaba por ser muito geral. Enquanto o lixo se agita, eu sento lá batendo e desejando ter me lembrado de canalizar para menos. Minha melhor idéia até agora foi tentar configurar o meu shell para sempre saída de página, perguntei outra pergunta sobre isso. Além disso, eu só tenho soluções abaixo do ideal:

  • Aguarde pacientemente que a saída termine
  • Treine-se para sempre canalizar para menos
  • Obtenha um tubo maior e uma caixa mais rápida para que a saída seja mais rápida

O que você faz?

    
por Ben Williams 26.06.2009 / 15:12

3 respostas

8

Tente usar a tela. link

Você pode alternar para outro shell e continuar trabalhando em outra coisa enquanto a saída é concluída e tem a vantagem adicional de que a saída não será enviada para o link remoto se você não estiver assistindo.

Também há suporte para a rolagem do buffer na tela, para que você possa paginar ou pesquisar pela saída quando isso for feito.

Se você não estiver usando a tela, ^ C não está respondendo e você realmente precisa encerrar o trabalho, você pode querer tentar '~.' (a interrupção ssh padrão) para finalizar a sessão ssh. Você pode precisar pressionar enter antes de digitar '~'. '

    
por 26.06.2009 / 15:25
2

Além das 3 sugestões que você mencionou, tente ^ Z, depois mate o processo e corrija-o.

    
por 26.06.2009 / 15:28
0

Trabalhe de forma mais inteligente ... use a tela. Tubo para menos. Verifique novamente os comandos que você está executando ... atenção aos detalhes.

Teste os comandos localmente se você precisar executar o regex foo.

Você mencionou que o login efetuado novamente é um problema, use chaves ssh e um agente de gerenciamento de chaves.

    
por 26.06.2009 / 16:28