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

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

Re: [shell-script] Duvidas sobre arquivos vazios.


From: Ernander (Nander)
Subject: Re: [shell-script] Duvidas sobre arquivos vazios.
Date: Sun, 5 Feb 2017 17:33:15 +0900

Ou tra coisa Seria vc testar a Saida Dos comandos mysqldump, se eles forem executados com Sucesso OK se nao ele alerta.






2017-02-05 5:13 GMT+09:00 Rodrigo Cunha address@hidden [shell-script] <address@hidden>:
 

ops...correção, agora que notei que o -s tem os dois checks...rs.
Falha nossa!vlw!

-s FILE
              FILE exists and has a size greater than zero


Em 4 de fevereiro de 2017 18:08, Rodrigo Cunha <address@hidden> escreveu:
srs.
Fiz um teste rapido para deixar meu ambiente funcionando e ficou assim.
Testarei, em momento oportuno as opções apresentadas...muito grato a todos!!!
script:

#!/bin/sh
#Autor: Rodrigo da Silva Cunha
# Backupmysql.sh
DATA="" +%Y%m%d`
# NOME armazena o nome do arquivo de backup, neste caso
# o diretório é /home/workstation/backup, configure aqui o seu
# variáveis do Script
HOST="localhost"
USER="root"
PASSWORD=$(cat /root/.mysqlpass)
DATABASE1="my_wiki"
DATABASE2="forum"
NOME1="/mnt/HD2/backup/db/mysql.$DATABASE1.$DATA.bkp"
NOME2="/mnt/HD2/backup/db/mysql.$DATABASE2.$DATA.bkp"
echo iniciando backups Mysql $DATA >> /var/log/backup.registro.log
mysqldump -h $HOST -u $USER -p$PASSWORD --opt $DATABASE1 > $NOME1  2>>/var/log/backup.registro.lo
mysqldump -h $HOST -u $USER -p$PASSWORD --opt $DATABASE2 > $NOME2  2>>/var/log/backup.registro.lo

#Envio de Email
if [ -e $NOME1 ] && [ -s $NOME1 ]
then
    echo "mysql bpk $DATABASE1"     | mutt -s "Backup na base de dados  $DATABASE1 executado com sucesso" address@hidden
else
    echo "PROBLEMA bpk $DATABASE1" | mutt -s "PROBLEMA de Backup na $DATABASE1" address@hidden
fi

if [ -e $NOME2 ] && [ -s $NOME2 ]
then
    echo "mysql bpk $DATABASE2"    | mutt -s "Backup na basede de dados $DATABASE2 executado com sucesso" address@hidden
else
    echo "PROBLEMA bpk $DATABASE2" | mutt -s "PROBLEMA de Backup na base de dados $DATABASE2" address@hidden
fi
#FIM




Em 4 de fevereiro de 2017 17:54, Rodrigo Cunha <address@hidden> escreveu:
Obrigado srs!


Em 4 de fevereiro de 2017 16:21, 'Julio C. Neves' address@hidden [shell-script] <address@hidden.br> escreveu:
 

Fala Rodrigo,
Vc perguntou: " existe alguma forma de eu analisar através do if, se meu arquivo estiver vazio?", então é necessário, antes de mais nada, dizer que aqui o if não testa condição, ele testa instrução. Quem testa condição é o cmd test e os operadores matemáticos e, diga-se de passagem o teu if [ -e $NOME1 ] é o mesmo que if test -e $NOME1, ou seja [[ ... ]] [ ... ] são formas mais modernas do cmd test e prefiro a primeira.

Uma vez dito isso vamos primeiramente à sua resposta. A forma de vc testar se um arquivo *não* está vazio é usando a opção -s do cmd test:
[[ -s "$NOME1" ]] && 
    echo tá vazio    # Ihhh! Cadê o if? ;)

Sobre isso tenho 2 comentários:
  1. Coloquei a variável entre aspas pq se $NOME1 tiver espaço, dá zebra;
  2. Pode ser que $NOME1 tenha dado, mas o backup foi mal feito. Aí a melhor coisa a fazer é usar o cmd md5. 
​Bom fim de semana para todos.​

Abcs,
Julio

Damos treinamento em sua empresa por 
um preço, 
no mínimo, 50% mais barato que qualquer curso,
com certificado e nota fiscal.

​​
Nosso time de instrutores in company é formado somente por
autores
​ ​
de Best Sellers
​ ​
​laureados ​sobre os temas. P. exemplo:

Shell básico e Programação em Shell Julio Neves
Bacula Heitor Medrado
Zabbix Adail Host
Produção Gráfica e Videografismo Cadunico


Em 4 de fevereiro de 2017 13:48, Rodrigo Cunha address@hidden [shell-script] <address@hidden.br> escreveu:
 

Srs,

Criei o script de backup abaixo que envia um e-mail para meu usuário quando o backup falha ou tem sucesso com mensagens diferentes, o problema é que simulei um teste alterando a senha do meu root do mysql e os arquivos foram gerados vazios;

Surgiu uma duvida, existe alguma forma de eu analisar através do if, se meu arquivo estiver vazio?

script:

#!/bin/sh
#Autor: Rodrigo da Silva Cunha
# Backupmysql.sh
DATA="" +%Y%m%d`
# NOME armazena o nome do arquivo de backup, neste caso
# o diretório é /home/workstation/backup, configure aqui o seu
# variáveis do Script
HOST="localhost"
USER="root"
PASSWORD=$(cat /root/.mysqlpass)
DATABASE1="my_wiki"
DATABASE2="forum"
NOME1="/mnt/HD2/backup/db/mysql.$DATABASE1.$DATA.bkp"
NOME2="/mnt/HD2/backup/db/mysql.$DATABASE2.$DATA.bkp"
echo iniciando backups Mysql $DATA >> /var/log/backup.registro.log
mysqldump -h $HOST -u $USER -p$PASSWORD --opt $DATABASE1 > $NOME1  2>>/var/log/backup.registro.lo
mysqldump -h $HOST -u $USER -p$PASSWORD --opt $DATABASE2 > $NOME2  2>>/var/log/backup.registro.lo

#Envio de Email
if [ -e $NOME1 ]
then
    echo "mysql bpk $DATABASE1"     | mutt -s "Backup na base de dados  $DATABASE1 executado com sucesso" address@hidden
else
    echo "PROBLEMA bpk $DATABASE1" | mutt -s "PROBLEMA de Backup na $DATABASE1" address@hidden
fi

if [ -e $NOME2 ]
then
    echo "mysql bpk $DATABASE2"    | mutt -s "Backup na basede de dados $DATABASE2 executado com sucesso" address@hidden
else
    echo "PROBLEMA bpk $DATABASE2" | mutt -s "PROBLEMA de Backup na base de dados $DATABASE2" address@hidden
fi
#FIM



--
Atenciosamente,
Rodrigo da Silva Cunha
São Gonçalo, RJ - Brasil





--
Atenciosamente,
Rodrigo da Silva Cunha
São Gonçalo, RJ - Brasil




--
Atenciosamente,
Rodrigo da Silva Cunha
São Gonçalo, RJ - Brasil




--
Atenciosamente,
Rodrigo da Silva Cunha
São Gonçalo, RJ - Brasil



reply via email to

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