Linux - shell script

 
Vista:

shell script

Publicado por lsderio (2 intervenciones) el 21/01/2010 12:52:01
Hola,

Tengo el siguiente problema creando un script en bash:

Lo que trato de hacer es conectarme a un servidor ftp y guardar la salida estandar en un fichero ($Tmp), tambien quiero poner una barra de progreso (zenity) y que la barra termine cuando se termine la conexion con el ftp (EOF). Si ejecuto el siguiente codigo la barra funciona pero no me guarda el resultado en un fichero:

ftp -i $HostName <<EOF | zenity --progress --pulsate
verbose
binary
get $FileDown
quit
EOF

Si ejecuto este otro codigo me guarda la sesion ftp de forma correcta en un fichero ($Tmp)
ftp -i $HostName <<EOF> $Tmp
verbose
binary
get $FileDown
quit
EOF

No encuentro la forma de poder realizar las 2 cosas, es decir guardar el resultado en un fichero y ejecutar la barra de progreso hasta que llegue al EOF...
¿como puedo redireccionar la salida estandar a un fichero y hacer un pipe de la sesion ftp?, he probado lo siguiente pero no me ha funcionado...
ftp -i $HostName <<EOF| zenity --progress --pulsate && > $Tmp
verbose
binary
get $FileDown
quit
EOF

Slds. Y gracias de antemano. Lsderio.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:shell script

Publicado por Tom (482 intervenciones) el 21/01/2010 13:19:30
Tienes un comando muy práctico: tee

ftp -i ... <<EOF | tee $Tmp | zenity ...

Aparte de probar, échale un ojo a la página man, para las opciones y tal.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:shell script

Publicado por lsderio (2 intervenciones) el 21/01/2010 16:04:47
OK, mil gracias...

Slds. Y gracias de nuevo.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar