У меня есть журнал, работающий в режиме реального времени и сохраняющий в текстовый файл с помощью команды «script» с именем «test.txt» в / home / pi / также в режиме реального времени. Теперь я хочу настроить процесс, который постоянно опрашивает этот текстовый файл на предмет изменений и удаляет определенный c повторяющийся бит данных. Например, часть журнала будет выглядеть так:
Feb 9 11:43:24 dnsmasq[887]: query[A] captive.g.aaplimg.com from 192.168.178.21
Feb 9 11:43:24 dnsmasq[887]: forwarded captive.g.aaplimg.com to 8.8.4.4
Feb 9 11:43:24 dnsmasq[887]: reply captive.g.aaplimg.com is 17.253.55.202
Feb 9 11:43:24 dnsmasq[887]: reply captive.g.aaplimg.com is 17.253.57.211
Feb 9 11:43:54 dnsmasq[887]: query[A] captive.g.aaplimg.com from 192.168.178.21
И я хочу вырезать информацию только из строк с запросом [A] (при условии, что это можно использовать в качестве маркера), чтобы вывод текст выглядит так:
11:43 captive.g.aaplimg.com
Но проблема в том, что к этой строке журнала прикреплены разные URL-адреса, поэтому, например, строка с запросом [A] также может выглядеть следующим образом:
Feb 9 11:49:56 dnsmasq[887]: query[A] www.googleapis.com from 192.168.178.21
Тогда я бы хотел, чтобы выходные данные были:
11:49 www.googleapis.com
Но это должно происходить в режиме реального времени, так как текстовый файл / журнал обновляется, потому что я хочу, чтобы этот текстовый файл был постоянно опрашивается и отправляется на принтер также в режиме реального времени (длинная история)
Я искал awk + sed, чтобы вырезать нужную мне информацию, но они для меня новы, поэтому я нахожу формат немного сбивает с толку, и мне особенно трудно понять, как его запустить, чтобы это происходило в режиме реального времени.
Запуск на Debian Buster на Pi.
Хотелось бы помочь! Спасибо