Activex
(usa Ubuntu)
Enviado em 21/07/2010 - 12:20h
Pessoal tenho o script abaixo, só que o diretório onde será salvo(esta escrito dentro da pastas.conf) ele tem espaços, e não é possivel alterar, pois é uma pasta padrão do Google Gears, no nome da pasta é "Google Gears for Firefox". Oq devo fazer para que consiga executar esse script?
#!/bin/bash
#Usuário
DIR=$(pwd)
# pasta onde serão guardados os "BACKUPS"
PASTA_DESTINO=$DIR/rede/usuario-bsa-sede/Backup
# tempo(em numero de dias) que os arquivos ficarão guardados na pasta de backup
TEMPO_LIMITE=2
if [ ! -d $PASTA_DESTINO ]; # testa se existe o diretorio "$PASTA_DESTINO"
then
mkdir $PASTA_DESTINO #se não existir, cria ele...
echo -n ** "ATENÇÂO: Pasta de backup não existe. Data: " >> /var/log/messages
echo -n `date +%d-%m-%Y` >> /var/log/messages
echo " Pasta "$PASTA_DESTINO " criada." >> /var/log/messages
fi
if [ ! -e $PASTA_DESTINO/pastas.conf ];
then
zenity --info --text "** ERRO: arquivo de configuração "$PASTA_DESTINO/"pastas.conf, não existe." #>> /var/log/messages
zenity --info --text "** Favor criar um arquivo pastas.conf, dentro da pasta de destino." #>> /var/log/messages
exit 1
fi
# pega as linhas do arquivo, uma em cada volta do loop.
while read LINHA
do
# pega o nome da pasta.
PASTA_BACKUP=`basename $LINHA`
# pega o caminho da pasta.
CAMINHO_PASTA=`dirname $LINHA`
# testa se existe o diretorio a ser copiado
if [ ! -d $CAMINHO_PASTA/$PASTA_BACKUP ];
then
zenity --info --text "ERRO: diretório "$CAMINHO_PASTA/$PASTA_BACKUP" não existente!" >> $PASTA_DESTINO/erro.log
echo "ERRO: diretório "$CAMINHO_PASTA/$PASTA_BACKUP" não existente!" >> $PASTA_DESTINO/erro.log
echo " Abortando..." >> $PASTA_DESTINO/erro.log
exit 1
fi
# define nomen do arquivo.
ARQUIVO=$PASTA_BACKUP-`date +%Y-%m-%d_%H-%M-%S`-$HOSTNAME.tar.gz
# testa se jah existe o arquivo da data atual, se existir ele cria um novo backup
# com o horario incluido no nome do arquivo
if [ -e $PASTA_DESTINO/$PASTA_BACKUP-`date +%Y-%m-%d`-$HOSTNAME.tar.gz ];
then
echo -n "ATENÇÂO: Já foi realizado um backup no dia:" >> $PASTA_DESTINO/erro.log
echo -n `date +%d-%m-%Y` ",na pasta:" $PASTA_BACKUP >> $PASTA_DESTINO/erro.log
tar cpzf $PASTA_DESTINO/$ARQUIVO $CAMINHO_PASTA/$PASTA_BACKUP > /dev/null 2> /dev/null
echo -n ". Backup realizado novamente no horário: " >> $PASTA_DESTINO/erro.log
echo `date +%H:%M:%S` >> $PASTA_DESTINO/erro.log
else
tar cpzf $PASTA_DESTINO/$PASTA_BACKUP-`date +%Y-%m-%d`-$HOSTNAME.tar.gz $CAMINHO_PASTA/$PASTA_BACKUP > /dev/null 2> /dev/null
fi
# escreve no arquivo de log($PASTA_DESTINO/backups.log)
echo -n "*** Backup realizado da pasta " $PASTA_BACKUP >> $PASTA_DESTINO/backups.log
echo -n " no dia: "`date +%d-%m-%Y`", no horário: " >> $PASTA_DESTINO/backups.log
echo -n `date +%H:%M:%S`", no host: " $HOSTNAME "***" >> $PASTA_DESTINO/backups.log
echo "" >> $PASTA_DESTINO/backups.log
done < $PASTA_DESTINO/pastas.conf
# guarda em $DELETADOS os nomes dos arquivos que não foram alterados há mais de $TEMPO_LIMITE dias e q contenham a extensao .tar.gz
DELETADOS=`find $PASTA_DESTINO/ -ctime +$TEMPO_LIMITE | grep .tar.gz`
rm -f $DELETADOS
echo "Foram deletados os seguintes arquivos: " >> $PASTA_DESTINO/removed.log
echo $DELETADOS >> $PASTA_DESTINO/removed.log
gedit $DIR/rede/usuario-bsa-sede/Backup/backups.log
zenity --info --text "Bakcup realizado com sucesso! \nClicar OK para finalizar o script." --title "Sucesso"