Me olvidaba, no puedo tocar la configuracion del ftp yy la idea es que nadie
tenga que configurar sus profile ni nada, tan solo que lo haga todo con un
comando.

2010/8/27 AngelD <ang...@froga.net>

> El Thu, 26 Aug 2010 21:47:52 -0300
> Rino Rondan <villadalm...@gmail.com> escribió:
>
> > Buenas:
> >
> > Tengo este  script del expect
> >
> > #!/bin/bash
> > HOST=$1
> > USER=$2
> > PASS=$3
> >
> > VAR=$(expect -c "
> > #set timeout -1
> > spawn ssh $u...@$host
> > expect \"*?assword:*\"
> > send -- \"$PASS\r\"
> > expect \"$ \"
> > #send -- \"\r\"
> > send \"sudo su -\r\"
> > expect \"$ \"
> > send \"cd /var/tmp/xxx/xxxgrab\r\"
> > expect \"$ \"
> > send \"/usr/bin/bash\r\"
> > expect \"$ \"
> > send \"cd outputs\r\"
> > expect \"$ \"
> > #send \" ls -la|head -1\r\"
> > send \"cp  `ls -ls |sort -nr -k 7 -k 8 |awk '{print $10}'|head -1`
> > rino\r\" #send \"cp $(ls -ls |sort -nr -k 7 -k 8 |awk '{print
> > $10}'|head -1 rino\r\" expect \"$ \"
> > send \"exit\r\"
> > ")
> > echo "=======RUN========"
> > echo "$VAR"
> >
> >
> > y lo que me hace es me trae (el ls) lo que hay en el equipo donde
> > tire el expect y no donde me acabo de conectar por ssh.
> >
> > la salida es
> >
> > xxxx:# cd /var/tmp/emc/emcgrab
> > xxx:# /usr/bin/bash
> > xxx:# cd outputs
> > xxx:# cp  grabtesting  rino
> > cp: cannot access grabtesting
> > xxx:#
> > cx...@xxx:/xxxhome/cxxxxx/bin %
> >
> > y ese grabtesting lo tengo en mi home directory desde donde ejecute
> > el grab.
> >
> > c...@xxx:/xxxhome/cxxxxx/bin % ls -la grab*
> > -rwxr-----   1 cxxxxx   whsysadm     597 Aug 26 17:31 grabtesting
> > cxx...@xxxxxx:/xxxhome/cxxxxx/bin %
> >
> > La idea es que al conectarme por ssh al equipo remoto entre a un
> > directorio, filtro para buscar justo el archivo que quiero y luego
> > poder copiarlo asi lo renombro, para luego enviar ese archivo a un
> > ftp, asi que tambien tendria que guardar el nuevo nombre un una
> > variable para que cuando lo suba al ftp le ponga ese valor.
> > se entiende??
> > en el mismo proceso que invoco en la variable VAR
> > 1 conectarme por ssh
> > 2 ir al path correspondiente
> > 3 obtener y copiar un file con otro nombre
> > 4 obtener ese file nuevo y guardarlo en una variable para que lo use
> > expect 5 conectarme por ftp
> > 6 enviarlo el archivo guardado en la varia ble al ftp
> >
> > Me quedo sin saber como hacer el paso 3 porque me devuelve otra cosa,
> > despues nose como sera para guardar la variable.. porque tam bien me
> > toma todo como si fuera el equipo que ejecute el script.
>
>         Vayamos por partes. ¿Intentas utilizar expect para conectarte a
> una máquina por ssh?. Porque eso ya lo hace el propio ssh con las
> claves del fichero '~/.ssh/authorized_keys'. Una vez realizado esto,
> todo lo que comentas creo que se puede realizar utilizando "ssh MACHINE
> comando". ¡Incluso se puede automatizar el ftp con el fichero '.netrc'!
>
>        Lo de guardar ficheros en variables es un poco bruto, sobre
> todo cuando es innecesario.
>
>        saludos --- Angel
>
>
> --
> To UNSUBSCRIBE, email to debian-user-spanish-requ...@lists.debian.org
> with a subject of "unsubscribe". Trouble? Contact
> listmas...@lists.debian.org
> Archive: http://lists.debian.org/20100827122716.67325...@x32
>
>


-- 
Viva La Santa Federacion!!
Mueran Los Salvages Unitarios!!
^^^Transcripcion de la epoca ^^^
http://www.rinorondan.com.ar
http://counter.li.org  Linux User -> #517918

Reply via email to