
Как можно разделить выходные строки с помощью tailf и awk следующим образом?
Из этого:
tail -f logfile.log | awk '/connected/ {print "\033[31m" $0 "\033[39m"}'
Выход:
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
К этому выводу:
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
Заранее спасибо!
решение1
Если вы хотите, чтобы разделительные линии были белыми:
tail -f logfile.log | awk '/connected/ {print "\033[31m" $0 "\033[39m\n-----------------------------------"}'
Если вы хотите, чтобы разделительная линия была красной:
tail -f logfile.log | awk '/connected/ {print "\033[31m" $0 "\n-----------------------------------\033[39m"}'
решение2
Если все, что вам нужно, это печатать ----------------------------------------------------------
после каждой строки, установите ORS (разделитель выходных записей) на то, что вы хотите, чтобы шло после каждой строки:
$ 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
----------------------------------------------------------
Здесь я переместил \033[39m
в ORS из print
команды и окружил дефисы символами новой строки ( \n
).