Ver Mensaje Individual
  #7 (permalink)  
Antiguo 24/11/2012, 10:39
elrey123
 
Fecha de Ingreso: febrero-2009
Mensajes: 61
Antigüedad: 15 años, 9 meses
Puntos: 1
Respuesta: de 5 archivos cual es el actual

Estuve checando la ideas que han estado sugiriendo, pero no he dado aun con la solucion.

La idea es esta tengo 2 usuarios en cada uno de sus home reciben unos archivos(fichero.txt, archivo2.xml, archivo3.txt, etc). lo que trato de hacer que al ejecutar el scripts ver todos los archivos del dia de que recibieron cada usuario y enviarlo a un directorio general.
Y en otro script hacer una conexion por ftp y poder transferir estos archivos. el script es ejecutarlo a diario para enviar los archivos por el ftp.

Estuve haciendo pruebas entrando desde el home de cada usuario y realizar la conexion al ftp y enviar todos los archivos pero no es factible porque voy a estar enviando los archivos repetidos, de manera que solo se envien los archivos actuales. lo de inotify no se si hay para solaris 10, pero estoy investigando para ver.

Todo esta operacion lo estoy haciendo en solaris 10. Estoy utilizando este script para las pruebas.
envio.sh
#!/bin/bash
#
#variables
FTP_SERVER=elrey123
FTP_USER=dchan
FTP_PASS=******
dir2=prueba
#no_archivo=tesa.txt
#copia de archivo
pwd
fecha=$(date '+%h %d')
arte=$(find . -type f -mtime -1)
archo=$arte
dir=$(pwd)
ext=$(find . -name \*.txt)

if [ -d $dir ]
then
# Codigo si existe
file * | grep $ext
echo estos son los archivos:
else
# codigo si no existe
echo no existe ningun archivo con extencion txt
fi

HORA=$(date '+%H:%M')
#arch=$(find tesa.txt)
echo $fecha
echo $HORA

echo enviando $archo
echo enviando $arch
echo enviando $no_archivo
echo enviando $oter

echo '====='
ftp -i -n <<EOF
open $FTP_SERVER
quote USER $FTP_USER
quote PASS $FTP_PASS
binary
hash
put $archo
put $oter
put *.sh
put *.txt
bye
EOF

lo que hago con este script estando en el directorio del usuario buscar con el comando find y utilizando la opcion -mtime -1 que archivos fueron modificado al menos por un dia y la salida del comando del find lo almaceno en una variable, despues lo envio con el put nombre de la variable, he observado si hay un solo nombre de archivo lo envia, pero si har mas de un archivo solo envia uno, por ejemplo:
al imprimir la variable tiene esto: archivo1.txt archivo2.txt archivo3.xml, he buscado ejemplo para ver en que estoy fallando pero aun nada. alguna idea.
saludos.