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

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

Re: [shell-script] Ajuda com o rsync


From: Cléoson Barreto
Subject: Re: [shell-script] Ajuda com o rsync
Date: Thu, 18 Aug 2011 08:44:55 -0300

Olá!

     Vi que você faz a cópia dos arquivos com o rsync. No man do rsync tem o
seguinte:

*"...
--max-size=SIZE
              This tells rsync to avoid transferring any file that is larger
than the specified SIZE. The SIZE value can be suffixed with a string to
indicate a size multi‐
              plier, and may be a fractional value (e.g. "--max-size=1.5m").

              This option is a transfer rule, not an exclude, so it doesn’t
affect the data that goes into the file-lists, and thus it doesn’t affect
deletions.   It  just
              limits the files that the receiver requests to be transferred.

              The suffixes are as follows: "K" (or "KiB") is a kibibyte
(1024), "M" (or "MiB") is a mebibyte (1024*1024), and "G" (or "GiB") is a
gibibyte (1024*1024*1024).
              If you want the multiplier to be 1000 instead of 1024, use
"KB", "MB", or "GB".  (Note: lower-case is also accepted for all values.)
Finally, if  the  suffix
              ends in either "+1" or "-1", the value will be offset by one
byte in the indicated direction.

              Examples: --max-size=1.5mb-1 is 1499999 bytes, and
--max-size=2g+1 is 2147483649 bytes
..."*

     Eu não testei, mas creio que isso faz o que você precisa, ou seja, não
transferir arquivos maiores que um determinado tamanho. Então acho que se
você acrescentar o parâmetro "--max-size=200M" na linha do rsync deve
funcionar.

-- 
[]'s
Cléoson.


Em 17 de agosto de 2011 19:45, unai.rafael <address@hidden> escreveu:

> **
>
>
> Sou técnico de campo(com pouco conhecimento de shell) em uma empresa e
> usaria um script para me auxiliar a fazer bkps. O script ta "pronto" só que
> os usuários querem burlar meu script. Oq preciso é, fazer com que sejam
> copiados só os arquivos com menos de 200mb, como posso fazer?
>
> echo -e "\n -----=====>>>>> Arquivos serão copiados de qual CPF?
> <<<<<=====-----\n\n"
> read -p "Digite o CPF do usuário (ex:00000000000): " CPF
> ORIGEM=/home/$CPF/
> DESTINO=`pwd`/$CPF
> ARQTEMP=/tmp/tm.txt
> LOG=/tmp/log-rsync
> INICIO=`date +%d/%m/%Y-%H:%M:%S`
> MAQUINA=`hostname`
> IP=`ifconfig | grep -i inet| cut -d ":" -f 2| cut -b 2-| sed 's/ /\n/g'|
> head -n 1`
>
> # início do script, criando o cabeçalho do arquivo de log
> echo " " >> $LOG
> echo " " >> $LOG
> echo "| ------ ------ ------ ------ ------ ------ -----------" >> $LOG
> echo " Início da cópia as $INICIO" >> $LOG
> echo " Este script esta sendo executado na estação $MAQUINA," >> $LOG
> echo " e fará a cópias dos arquivos do $CPF para a pasta $DESTINO" >> $LOG
> echo " A estação $MAQUINA esta cadastrada com o IP $IP" >> $LOG
>
> # início da cópia dos arquivos, exeto os tipos que estão relacionados
> abaixo
>
> rsync --exclude='*.mp3' --exclude='*.MP3' --exclude='*.AVI'
> --exclude='*.JPG' --exclude='*.jpg' --exclude='*.JPEG' --exclude='*.jpeg'
> --exclude='*.avi' --exclude='*.wmv' --exclude='*.WMV' --exclude='*.rmvb'
> --exclude='*.RMVB' --exclude='*.bmp' --exclude='*.BMP' --exclude='*.mov'
> --exclude='*.MOV' --exclude='*.flv' --exclude='*.FLV' --exclude='*.mpeg'
> --exclude='*.MPEG' --exclude='*.gif' --exclude='*.GIF' --exclude='*.wma'
> --exclude='*.WMA' --exclude='*.wav' --exclude='*.WAV' --exclude=rede/
> --exclude='.*' -CravzpqE $ORIGEM $DESTINO >> $LOG
>
> #faz a cópia dos arquivos oculto, que contém informações importantes.
>
> cp -r /home/$CPF/.mozilla/ $DESTINO
> cp -r /home/$CPF/.thunderbird/ $DESTINO
> cp -r /home/$CPF/.wine/.Notes/drive_c/Lotus/Notes/Data $DESTINO
>
> # Finaliza a cópia com a conclusão do arquivo de log
> FIM=`date +%d/%m/%Y-%H:%M:%S`
> echo " Finalizando a cópia dos arquivos as $FIM" >> $LOG
> echo "| ------ ------ ------ ------ ------ ------ --------" >> $LOG
> echo " " >> $LOG
> echo " " >> $LOG
>
> #copia o log para dentro da pasta onde as informações foram copiadas
>
> cp $LOG $DESTINO
>
> #Exibe a log, informando que a cópia foi concluída com sucesso.
>
> gedit $LOG
>


[As partes desta mensagem que não continham texto foram removidas]



reply via email to

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