Como usar o SSH dentro de um loop
Por Ricardo Barioni
Data de Publicação: 08 de Abril de 2007
Já tentou executar um comando SSH dentro de um loop?
while do ... ssh ... done
Pois é, o comando SSH encerra o loop na primeira passada, e vc fica feliz pensando que está rodando até o fim do while. Lêdo engado.
Para isso, coloque a opção "-n" no SSH, assim:
while do ... ssh -n .... done
Acontece que o SSH envia um "exit(0)" em sua saída, o qual é interpretado no sub-shell criado pelo loop, e lá se vai a conclusão seu loop pro espaço.
Bons códigos a todos.
Veja a relação completa dos artigos da coluna Cantinho do Shell
Para se manter atualizado sobre as novidades desta coluna, consulte sempre o newsfeed RSS
Para saber mais sobre RSS, leia o artigo O Padrão RSS - A luz no fim do túnel.
Opinião dos Leitores
27 Abr 2010, 11:21
A diferença é que no caso do for, voce sabe exatamente quantas vezes voce quer que o comando seja executado.
09 Abr 2007, 19:38
Ou poderia enviar remotamente um mesmo comando para o mesmo servidor a cada X espaço de tempo.
Muitas utilizações são possiveis.
Um bom detalhe pra ser lembrado.



