AWK divide a saída com a linha

AWK divide a saída com a linha

Como posso dividir as linhas de saída usando tailf e awk assim?

A partir disso:

tail -f logfile.log | awk '/connected/ {print "\033[31m" $0 "\033[39m"}'

Saída:

2018-01-31 10:00 user connected autentication successful
2018-01-31 10:10 user connected autentication successful
2018-01-31 10:23 user connected autentication successful
2018-01-31 10:34 user connected autentication unsuccessful
2018-01-31 10:35 user connected autentication unsuccessful

Para esta saída:

2018-01-31 10:00 user connected autentication successful
----------------------------------------------------------
2018-01-31 10:10 user connected autentication successful
----------------------------------------------------------
2018-01-31 10:23 user connected autentication successful
----------------------------------------------------------
2018-01-31 10:34 user connected autentication unsuccessful
----------------------------------------------------------
2018-01-31 10:35 user connected autentication unsuccessful

Desde já, obrigado!

Responder1

Se você quiser que as linhas separadoras sejam brancas:

tail -f logfile.log | awk '/connected/ {print "\033[31m" $0 "\033[39m\n-----------------------------------"}'

Se você quiser que a linha separadora fique vermelha:

tail -f logfile.log | awk '/connected/ {print "\033[31m" $0 "\n-----------------------------------\033[39m"}'

Responder2

Se tudo o que você deseja fazer é imprimir ----------------------------------------------------------após cada linha, defina o ORS (separador de registro de saída) para o que você deseja que apareça após cada linha:

$ awk -v ORS='\033[39m\n----------------------------------------------------------\n' '/connected/ {print "\033[31m" $0}' foo
2018-01-31 10:00 user connected autentication successful
----------------------------------------------------------
2018-01-31 10:10 user connected autentication successful
----------------------------------------------------------
2018-01-31 10:23 user connected autentication successful
----------------------------------------------------------
2018-01-31 10:34 user connected autentication unsuccessful
----------------------------------------------------------
2018-01-31 10:35 user connected autentication unsuccessful
----------------------------------------------------------

Aqui, mudei \033[39mpara o ORS do printcomando e coloquei os hífens com novas linhas ( \n).

informação relacionada