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

Re: Duda Script



El vie, 24-08-2007 a las 10:33 -0300, Maxi escribió:
> Hola gente,
> 
> Tengo un script[1] muy simple, que me trae un problema y no veo como
> mejorarlo....
> El script debe copiar archivos de un path a otro.
> El script esta en el cron, y cada 20 minutos se ejecuta.
> En el path original constanemente se escriben archivos, y el problema
> es que hay momentos que se estan escribiendo archivos y el script
> entra en funcionamiento, lo que ocurre es que el archivo que estaba
> abierto se copia mal.
> 
> ¿En el script, como puedo consultar y no copiar si el archivo origen
> esta abierto o esta siendo utilizado?
> 
> Una opcion seria consultar por el tamaño del archivo, dos veces, para
> ver si hay diferencia, si la hay es por que el archivo esta creciendo,
> por ende se esta usando.
> 
> Pero habra alguna otra manera de saberlo? un... if [ $file is open ]
> 
> [1]
> #!/bin/bash
> 
> cd /var/www/webmail/voice/
> path="/var/www/backup"
> 
> for file in *.wav
> do
>         file_new=`echo "$file" | sed   "s/://g"`
>         if [ ! -e $path/$file_new  ]
>         then
>                 cp $file  $path/$file_new
>         fi
> done
> 
> 
> 
> Saludos.
> Maxi.
> 


¿Y por qué no usas RSYNC?

Tendrás la ventaja de que si cambia algún archivo ya copiado lo
sincronizará...


#!/bin/sh

LOCAL=/var/www/webmail/voice/
BACKUP=/var/www/backup/

rsync -avz --include=*.wav $LOCAL $BACKUP

-------------------


Puedes probar añadiendo la opción --dry-run para ver que haría sin
hacerlo.

Saludos
-- 
http://soleup.eup.uva.es/mariodebian

Attachment: signature.asc
Description: Esta parte del mensaje =?ISO-8859-1?Q?est=E1?= firmada digitalmente


Reply to: