shell-script-pt
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [shell-script] Script de ftp


From: Roberto Warstat
Subject: Re: [shell-script] Script de ftp
Date: Tue, 03 Jun 2014 23:19:52 -0300
User-agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:24.0) Gecko/20100101 Thunderbird/24.5.0

Eu testei uma vez e ele me pareceu mais devagar que compactar e enviar por ftp. Mas, talvez eu tenha que fazer testes melhores.
O meu cenário é fazer o backup entre máquinas em lugares físicos distintos, conectadas através da internet.

Abraço,
Roberto

Em 03/06/2014 12:18, Gustavo Freitas address@hidden [shell-script] escreveu:
 
pq não usa o rysnc ?


Em 2 de junho de 2014 21:28, Luiz Roberto address@hidden [shell-script] <address@hidden> escreveu:
 

Irei atropelar o Júlio, grande mestre!... Seguinte, o 2> significa "stderror" e como o Julio lhe informou, o 2>&1 signica que o erro também irá gravar no ">/tmp/erro_word.lst

Em 02/06/2014 20:35, "Roberto Warstat address@hidden [shell-script]" <address@hidden> escreveu:

 

Perfeito Júlio, era isso mesmo.
Agora a pergunta, o quê faz exatamente o 2>&1 ?

Abraço,
Roberto

Em 02/06/2014 20:21, 'Julio C. Neves' address@hidden [shell-script] escreveu:
 
Roberto, experimente fazer:
ncftpput resto_do_comando > /tmp/erro_word.lst 2>&1


Abcs,
Julio
@juliobash
Próximos cursos de Shell
Cidade         Local Período
Rio de Janeiro EDX 02 a 06/06
São Paulo 4Linux 21 a 25/07
Dou treinamento de Shell em qualquer cidade.
Para mais detalhes, me mande um e-mail.


Em 2 de junho de 2014 20:17, Roberto Warstat address@hidden [shell-script] <address@hidden> escreveu:
 

Alfredo,

Funcionou perfeitamente. Muito obrigado.

Ficou só um problema ainda, no e-mail não está vindo o erro que deu.
Eeu entendo que quando executo
ncftpput resto_do_comando > /tmp/erro_word.lst

A saída do comando ncftpput deveria ir para o arquivo erro_word.lst. E esse arquivo deveria ser enviado para o e-mail em caso de erro.
O quê ocorre é que o arquivo está vazio.

Alguma idéia de como eu poderia resolver isso?

Abraço,
Roberto

Em 02/06/2014 15:12, Roberto Warstat escreveu:
Ok, muito obrigado pela explicação.
Irei testar e depois posto o resultado.

Abraço,
Roberto


Em 2 de junho de 2014 15:11, Alfredo Casanova address@hidden [shell-script] <address@hidden> escreveu:
 
Não.

Existem dois operadores pra testar a saída de um comando: && (AND) e || (OR)

vc pode testar assim:

ls && echo saída OK

isso quer dizer q se a saída do comando ls for 0, ele vai dar o echo.

se vc fizer

ping -c1 0.0.0.1 || echo NAO DEU

ele vai imprimir "NAO DEU" na tela, pq a saída do comando 'ping' será diferente de 0.

É a mesma coisa de testar o $?


2014-06-02 14:46 GMT-03:00 Roberto Warstat address@hidden [shell-script] <address@hidden>:

 
Alfredo,

Pelo que entendi, nesse caso eu sempre vou receber o e-mail, independente se houve erro na transmissão ou não, correto? O quê eu quero é receber somente quando houver erro.

Abraço,
Roberto


Em 2 de junho de 2014 14:34, Alfredo Casanova address@hidden [shell-script] <address@hidden> escreveu:
 
ncftpput -u usuario -p senha -P porta host /diretorio_destino 
/diretorio_origem/word-"$DATA".tar.gz > /tmp/erro_word.lst || echo "Erro no envio do arquivo word - $?" | mutt -s "Erro no ftp" -a /tmp/erro_word.lst -- e-mail_destino


2014-05-31 19:38 GMT-03:00 Roberto Warstat address@hidden [shell-script] <address@hidden>:

 

Pessoal,
Uso o script abaixo para fazer o backup de arquivos e envio para uma
máquina externa via ftp. Na minha lógica, qualquer mensagem que desse na
execução do comando ncftpput seria gravado no arquivo erro_word.lst, no
diretório TMP.
Seguido disso, se a execução do comando ncftpput não fosse feita com
sucesso, um e-mail deveria ser enviado contendo o arquivo erro_word.lst
anexado.
O quê ocorre hoje é que recebo o e-mail mesmo que o comando ncftpput
tenha sido executado com sucesso.

Alguma sugestão do que posso ajustar nesse script para que receba o
e-mail só quando tiver um erro na execução do ftp?

DATA="" +%Y%m%d_%H.%M`
tar -cz -f /diretorio_destino/word-"$DATA".tar.gz /diretorio_origem

ncftpput -u usuario -p senha -P porta host /diretorio_destino
/diretorio_origem/word-"$DATA".tar.gz > /tmp/erro_word.lst

if [ $? -ne 0 ]
then
echo "Erro no envio do arquivo word - $?" | mutt -s "Erro no ftp" -a
/tmp/erro_word.lst -- e-mail_destino
fi

Abraço,
Roberto Warstat




--
[]'s
Alfredo Casanova
Linux User #228230
msn: address@hidden
tel: +55 61 9655 9619





--
[]'s
Alfredo Casanova
Linux User #228230
msn: address@hidden
tel: +55 61 9655 9619








--
Gustavo Freitas


reply via email to

[Prev in Thread] Current Thread [Next in Thread]