On 10/29/07, Leandro Lucarella <[EMAIL PROTECTED]> wrote:

> > if [ ! "$1" = saraza ]; then
> >       exec nc -c "\"$0\" saraza" www.google.com 80
> > fi

> Uh, que bizarro. Y si no existiera el -c? Lo que me gustaría hacer
> puntualmente es algo como:
>
> 1) redirigir stdout a stdin de nc.
> 2) redirigir stdout de nc a la "consola" (el el ex-stdout de mi script)
> 3) correr el nc en background
> 4) tirar echos desde el script, que los "procese" el nc y que la salida
>    del nc vaya a la consola

Para esto, tenés dos maneras. La más sencilla:

En lugar del exec anterior, hacés:

"$0" saraza | nc www.google.com 80

O también, englobás todo el script con esto:

{
   echo GET / ...

} | nc www.google.com 80

En ambos casos tenés el problema de que en cuanto terminó el script,
nc se cierra. Tenés que meter un sleep o hacer alguna cosa para evitar
eso.

La otra, ya requiere brujería de bash.

#!/bin/bash

exec > >(nc www.google.com 80)

echo GET / HTTP/1.0
echo Host: google.com
echo


-- 
Martín Ferrari

_______________________________________________
Lista de correo Programacion.
[email protected]
http://listas.fi.uba.ar/mailman/listinfo/programacion

Responder a