Перенаправление вывода GREP в разные текстовые файлы в зависимости от содержимого захвата

Недавно я случайно отформатировал раздел ext4 в NTFS в своей Ubuntu 16.04 и смог успешно восстановить весь раздел, запустив проверку файловой системы.

sudo fsck.ext4 -v /dev/sda10

Я записал шаги в этой записи блога.

1
31.03.2017, 17:04
2 ответа

Понятно, Камарадж, спасибо за помощь! это было ключом к поиску правильного ответа:

Вот сценарий, который у меня сработал:

tail -1 logfile.txt | awk -F "\": \ "" '{for (c = 1; c <= NF; c ++) {if ($ c ~ / Speed ​​KPH /) {print $ (c + 1) +0> "spd. txt "} {if ($ c ~ / RPM /) {print $ (c + 1) +0>" cad.txt "}}}} '

Пришлось вернуться к хвосту -1 потому что на tail -f повлияла буферизация, и она также оставит след в txt-файле со всеми захваченными значениями. Я ожидал только одну строку с самым последним результатом в выходных текстовых файлах.

Спасибо и всего наилучшего!

0
28.01.2020, 00:58

Здесь цикл while не нужен...

tail -f logfile.txt | awk '/SPEED/{print >"spd.txt"}/CADENCE/{print >"cad.txt"}'
0
28.01.2020, 00:58

Теги

Похожие вопросы