Marcos Ramirez escribió: > On Tue, 2007-06-26 at 13:56 -0400, Ricardo Utreras Estrella wrote: >> Perfecto! >> Claro que modifique un poco el codigo para usar "comm" y esto fue >> finalmente lo que me sirvio: >> >> #tail -20 LOG > old; while true; do sleep 10; tail -20 log > now; comm >> -13 old now > temporal; mv now old; done > > Bien, ahora explica para que quieres algo asi y como lo haras para > detectar en 10[s] los cambios que se te van generar, dado que al segundo > 11 vas a perder esa info; sin contar que en 10[s] perfectamente pueden > llegar /mas/ de 20 lineas a tu log. > > Sigo sin saber que pretendes > > Saludos
Lo que pretendia ya lo logramos: Ir guardando las lineas que se agregaban al LOG (en un intervalo X de tiempo) en un archivo TEMPORAL durante ese intervalo X de tiempo. Quizas existe alguna manera mas elegante, pero lo indicado funciona por ahora. Con respecto a los valores del tiempo (10) y el numero de entradas (20), estos valores no son los que se usaran en produccion, pero el numero de entradas del LOG tiene topes en un intervalo de tiempo, asi que no hay problema en determinar un numero de entradas fijo. ¿Y para que necesitamos esto? Tenemos un proceso que audita este LOG y como entrada necesitaba el archivo TEMPORAL, pero no sabiamos como generarlo y lamentablemente este programa es de codigo CERRADO sin posibilidad de modificarlo, por eso el "WORKAROUND". Se entiende que dicho proceso tarda menos de un segundo en procesar el archivo TEMPORAL y luego este se puede desechar, o pensabas que el archivo TEMPORAL iva a ser leido a mano? :| Saludos y gracias por sus comentarios! -- Atte. Ricardo Utreras Estrella