[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [shell-script] for com SSH
From: |
Julio C. Neves |
Subject: |
Re: [shell-script] for com SSH |
Date: |
Tue, 18 Jul 2006 18:59:07 -0300 |
Alexandre,
seu script está dando muito trabalho para ler pq vc trocou todos os cmds por
variáveis. Como estou sem ssh, não tenho certeza se isso funcionará, mas
deve ser testado. O ssh deverá ser feito da seguinte maneira:
ssh $IP || {
echo ssh não funcionou para $IP
continue
}
Espero que o ssh retorne um código de erro ($? > 0). Se isso ocorrer, o
continue força a volta para o loop.
Abraços,
Julio (http://www.julioneves.com)
Participe do 4o CONISLI - Congresso Internacional de Software Livre, dias
7 a 11 de novembro - SESC Vila Mariana - SP
www.conisli.org
Em 18/07/06, alexandre <address@hidden> escreveu:
>
>
> Notáveis do conselho,
>
>
> Estou com o seguinte problema:
>
>
> Estou com um shell com a seguinte função
>
>
> Ele faz um "laço for" com array, que executa um ssh para vários
> hosts
>
>
> copiando alguns backups, ok!?
>
>
> Só que quando o ssh encontra uma das redes fora do ar .....
>
>
> Ele gera erro e o "laço for" imediatamente para de executar o
> ssh para
>
>
> as redes seguintes ... Tem alguma forma do for não parar a
> execução, mesmo que haja erro em
>
>
> algumas dos hosts, e passar para o host a seguir comando até
> terminar ???
>
>
> Detalhe isso estava funcionando perfeitamente .....
>
>
> set -e
>
>
> HOME="/home/unitech/downbkp"
>
>
> LOGS="/home/unitech/downbkp/logs"
>
>
> LOGMD="/home/unitech/downbkp/logs/md5sum/"
>
>
> seq=`cat $HOME/index | egrep -v "^#|^$" | wc -l`
>
>
> index=`expr $seq - 1`
>
>
> index0=`cat $HOME/index | egrep -v "^#|^$|#" | cut -d "|" -f2`
>
>
> index1=`cat $HOME/index | egrep -v "^#|^$|#" | cut -d "|" -f1`
>
>
> sc='scp -oPort=2244 -r unitech@'
>
>
> src='/home/unitech/'
>
>
> DST='/u/UniTech/Clientes/'
>
>
> HORAS=`date +%I:%M:%S`
>
>
> DATE=`date +%A" "%d" de "%B" "%Y`
>
>
> DATEB=`date +%d/%m/%Y-%I:%M:%S`
>
>
> exsum='tgz'
>
>
> exgz='md5sum.txt'
>
>
> MD='md5sum'
>
>
> CAT='/bin/cat'
>
>
> declare -a dominios[]=($index0);
>
>
> declare -a arqs[]=($index1);
>
>
> ClearDir()
>
>
> {
>
>
> echo "Executando ... $0"
>
>
> rm -rf /home/unitech/downbkp/logs/md5sum.old
>
>
> mv /home/unitech/downbkp/logs/md5sum
>
>
> /home/unitech/downbkp/logs/md5sum.old
>
>
> mkdir -p /home/unitech/downbkp/logs/md5sum
>
>
> }
>
>
> ClearDir
>
>
> Function_copia ()
>
>
> {
>
>
> for i in `seq 0 ${index}` ; do
>
>
> $sc${dominios[$i]}:$src${arqs[$i]}$exsum $DST
>
>
> $sc${dominios[$i]}:$src${arqs[$i]}$exgz $LOGMD
>
>
> done
>
>
> }
>
>
> Function_copia
>
>
>
> ******************************************************************
> * Alexandre Soares dos Reis *
> * Analista de Suporte Técnico *
> * UniTech Informática Ltda *
> * Rua Brumadinho, 521 -2o andar - Prado - Belo Horizonte -MG *
>
> * Email: address@hidden *
> * www.unitech.inf.br *
> * *
> ******************************************************************
>
>
>
>
> [As partes desta mensagem que não continham texto foram removidas]
>
>
>
--
[ ]s,
Julio (http://www.julioneves.com)
Participe do 4o CONISLI - Congresso Internacional de Software Livre, dias
7 a 11 de novembro - SESC Vila Mariana - SP
www.conisli.org
[As partes desta mensagem que não continham texto foram removidas]