новичок с awk и пытается написать скрипт bash, чтобы использовать его для печати строк между двумя шаблонами в файле журнала, и я не могу заставить его работать. 1001 *
Я думаю, мне нужноэкранировать некоторые символы.
Вот пример раздела журнала, из которого я пытаюсь получить строки:
Processing... AP710 (/var/opt/testsys/rptprint/AP710)
sidjosajdois
sokds3488sds
doskdoskdoskdo
sodk229929
sending entire report to Job Mgr (spool) for user
Я хочу четыре строки между «Обработка ...»строка (первый шаблон) и строка «отправка» (второй шаблон), и есть только один раздел журнала, в котором есть этот выше раздел с первой строкой шаблона и второй строкой шаблона.
попытался использовать awk со следующей командой, используя часть первого шаблона и, при необходимости, экранировать символы "/":
awk '/\/var\/opt\/testsys\/rptprint\/AP710/{flag=1;next}/sending entire report to Job Mgr/{flag=0}flag' log
Но это дает мне другой раздел журнала, который также имеетпуть "/ var / opt / testsys / rptprint / AP710", поэтому я попытался изменить его, чтобы он имел больше строки (первый шаблон), добавив "Processing ...", и он ничего не возвращает ....
awk '/Processing\.\.\. AP710 \(\/var\/opt\/testsys\/rptprint\/AP710/{flag=1;next}/sending entire report to Job Mgr/{flag=0}flag' log
Может ли кто-нибудь дать несколько советов по поводу awk, чтобы я мог провести границу между двумя шаблонами?Потратив несколько часов, я собираюсь немного помешаться на попытках понять это, и я думаю, что, будучи новичком в awk, я упускаю что-то очевидное.
Приветствия.