[eside-ghost] Bash - Filtrando salida de proceso mientras se guarda en variable
Bruno Gonzalez
stenyak en gmail.com
Mie Ago 1 12:04:09 CEST 2012
Uhmm... por si no es muy obvio, se me ha olvidao decir que ese script
toma como input a stdout. Es decir lo guardas como "filter.sh", y
luego lo usas tal que:
$ comando.sh | ./filter.sh > /tmp/passthrough_del_stdout.txt
2012/8/1 Bruno Gonzalez <stenyak en gmail.com>:
> Esto debería funcionar más o menos. Ándate con ojo de usar echo vs
> printf, que a algunos les mola meter saltos de línea cuando no se les
> pide, etc etc (eso si necesitas que el stream de texto pase 100%
> intacto).
>
> También ten en cuenta que solo se gestiona stdout (no stderr), y
> además creo que no era técnicamente posible pipear ambas salidas a la
> vez con bash. La última vez que me metí en berenjenales de este tipo
> hace un par de años, tuve que tirar de ksh para solucionarlo...
>
>
> output=""
> while read line
> do
> printf "$line\n"
> output="$output\n$line"
> done
> #after EOS
> printf $output #or whatever
>
>
> 2012/8/1 Jon Valdés <juanval en gmail.com>:
>> Buenas a todos,
>>
>> Ando haciendo conjuros con Bash, y necesito una cosa un poco rara.
>> Necesito que la salida de un comando vaya saliendo en tiempo real por
>> consola mientras se almacena en una variable de bash. La idea es,
>> cuando termine el comando, sacar un resumen de todo lo que ha salido,
>> filtrando esa salida con un grep.
>>
>> Vamos, algo como esto:
>>
>> output=`comando.sh`
>> echo $output | grep "***"
>>
>> Pero haciendo que la salida de output vaya saliendo en tiempo real por
>> stdout a la vez que se guarda en $output.
>>
>> Lo único que se me ha ocurrido es tirar de "tee", pero preferiría no
>> tener que usar un archivo temporal si es posible.
>>
>> ¿Alguna idea?
>>
>> Enga, muchas gracias!!
>> _______________________________________________
>> eside-ghost mailing list
>> eside-ghost en listas.deusto.es
>> https://listas.deusto.es/mailman/listinfo/eside-ghost
>
>
>
> --
> Saludos,
> Bruno González
>
> _______________________________________________
> Jabber: stenyak AT gmail.com
> http://www.stenyak.com
--
Saludos,
Bruno González
_______________________________________________
Jabber: stenyak AT gmail.com
http://www.stenyak.com
Más información sobre la lista de distribución eside-ghost