Вместо этого вы можете использовать следующие команды:
$ tail -F /log/rest_server*.log | sed -e "/^==>/d;/^$/d" | egrep -v ' INFO (<some regext>)'
Команда sed удаляет строки, начинающиеся с «==>», и те, которые пусты;
Мне нужно привязать несколько файлов, и большую часть информации из них я удаляю (используя grep). Теперь мой вывод грязный с именами файлов. Как я могу их удалить?
Коротко к проблеме: $ tail -F /log/rest_server*.log | egrep -v ' INFO (<some regext>)'
вернуть:
==> /log/rest_server_dbs0.log <== ==> /log/rest_server_dbs1.log <== <some useful data1> ==> /log/rest_server_dbs0.log <== ==> /log/rest_server_dbs1.log <== <some useful data2> ==> /log/rest_server_dbs0.log <== ==> /log/rest_server_dbs1.log <== ==> /log/rest_server_dbs0.log <== ==> /log/rest_server_dbs1.log <== ==> /log/rest_server_dbm0.log <== <some useful data3> ==> /log/rest_server_dbs1.log <== ==> /log/rest_server_dbs0.log <== ==> /log/rest_server_dbs1.log <== ==> /log/rest_server_dbs0.log <== ==> /log/rest_server_dbs1.log <== ==> /log/rest_server_dbs0.log <== ==> /log/rest_server_dbs1.log <== ==> /log/rest_server_dbm0.log <== <some useful data4> ==> /log/rest_server_dbs1.log <==
Как я могу удалить это имена файлов и черных линий, если нет данных?
сделать результат
==> /log/rest_server_dbs1.log <== <some useful data1> <some useful data2> ==> /log/rest_server_dbm0.log <== <some useful data3> <some useful data4>
Вместо этого вы можете использовать следующие команды:
$ tail -F /log/rest_server*.log | sed -e "/^==>/d;/^$/d" | egrep -v ' INFO (<some regext>)'
Команда sed удаляет строки, начинающиеся с «==>», и те, которые пусты;