Estoy tratando de ver cuántas veces foo bar
aparece /var/log/foo.log
dentro de un tiempo arbitrario en un servidor remoto, pero nada de lo que he intentado hasta ahora ha funcionado.
Ya tengo un script de temporizador que uso para hacer un seguimiento de cuánto tiempo ha pasado desde que comencé a seguir /var/log/foo.log
, y ahora me gustaría una forma de saber cuántas veces foo bar
ha aparecido en la salida de cola.
Busqué en google, pero no encontré nada pertinente en las primeras 10 páginas de resultados.
Esto es lo que he probado con resultados frustrantes:
## works on local machine, but doesn't work as expected on remote
tail -f /var/log/foo.log | grep foo\ bar | sed '='
## works on local, but not remote
tail -f /var/log/foo.log | grep foo\ bar | cat -n -
## works on local, but not remote
tail -f /var/log/foo.log | grep foo\ bar | awk -F'\n' '{printf "[%d]> ", NR; print $1}'
Incluso intenté escribir una secuencia de comandos sed que actuara como tail -f
, pero logré un avance limitado o nulo con eso.
NOTA
el servidor remoto ejecuta una versión anterior de coreutils, y la actualización es una opción, pero NO es de ninguna manera la solución deseada.
--line-buffered
opción degrep
. Otail -f ... | awk '/foo bar/{print ++n, $0}'