Aísle una parte de la línea del archivo de registro y luego imprima en la pantalla

Aísle una parte de la línea del archivo de registro y luego imprima en la pantalla

Si tengo un archivo que actualiza un recuento de registros cada 5 minutos, el resultado se parece a este:

timestamp name of log file dataset record count 8600

timestamp name of log file dataset record count 8610

¿Cómo puedo aislar dataset record count XXXXe imprimir efectivamente solo esa cadena en la pantalla?

Respuesta1

De una manera, con awk:

awk 'match($0, "dataset record count [[:digit:]]+") { print substr($0, RSTART, RLENGTH) }' input

o canalizado a través de:

command | awk 'match($0, "dataset record count [[:digit:]]+") { print substr($0, RSTART, RLENGTH) }'

O con un grep que acepte -o:

grep -Eo 'dataset record count [[:digit:]]+' input

o canalizado:

command | grep -Eo 'dataset record count [[:digit:]]+'

información relacionada