El 24/08/07, mariodebian <[EMAIL PROTECTED]> escribió: > 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 > > ------------------- >
rsync, estaria muy bien, pero la copia la hago renombrando el archivo ya que tengo que sacar del archivo original unos ":" (dos puntos) que tiene como nombre el archivo (es la hora) y lo tengo que grabar en el BACKUP sin los ":". Tengo que ver como hacer que rsync sincronize dandose cuenta del temita de los ":" > > Puedes probar añadiendo la opción --dry-run para ver que haría sin > hacerlo. > > Saludos > -- > http://soleup.eup.uva.es/mariodebian > >

