¿Cómo puedo eliminar entradas duplicadas en el registro de Linux?

¿Cómo puedo eliminar entradas duplicadas en el registro de Linux?

He activado el inicio de sesión general de MySQL y he estado registrando cada transacción que se produce durante la última semana. También tengo un cronjob ejecutándose cada 5 minutos realizando algunas transacciones de MySQL que están contaminando mi registro. Me gustaría saber cómo puedo eliminar esas entradas de mi registro para que luzca más limpio.

Las entradas repetitivas de cron se ven así:

160614 16:45:01    36 Connect   user@localhost on 
                   36 Init DB   db1
                   36 Query     SELECT FROM status_history as sh INNER JOIN (SELECT work_order_i
d, MAX(status_changed) AS MaxDateTime FROM status_history GROUP BY work_order_id) as groupedsh ON sh.work_order_id = groupedsh.work_o

                            JOIN rchetype_work_order_views AS wov ON wo.id = wov.work_order_id
                                WHERE wov.viewed = 0 AND sh.status_id IN (SELECT status_id FROM rchetype_status_completed)
                   36 Quit

Estaba pensando en usar sed pero el problema es que la primera línea obviamente tendrá una fecha diferente y un número de transacción diferente (en este caso 36) y me gustaría eliminar todas las líneas hasta que encuentre el primer Salir al final. Entonces me preguntaba si hay una manera de hacer esto. Sólo estoy buscando ideas.

Respuesta1

Suponiendo que siempre tienen la misma cantidad de líneas, podría hacer algo como esto:
sed '/Connect\s*user@localhost on/,+7d' log.file Esto eliminará la línea que contiene Connect user@localhost ony las siguientes 7 líneas del archivo "log.file" en su directorio actual.

Editar: la solución final (bueno, al menos lo suficientemente buena para que el OP la modifique a su gusto) se puede encontrar en los comentarios.

información relacionada