У меня есть простой файл журнала, который очень грязный, и мне нужно, чтобы он был аккуратным. Файл содержит заголовки журналов, но все они смешаны вместе, поэтому мне нужно отсортировать файлы журнала в соответствии с заголовками журналов. Нет статического числа строк, что означает отсутствие фиксированного количества строк для каждого заголовка текстового файла. И я использую AWK для сортировки заголовков.Как Awk Параграф в сложном текстовом файле?
Файлы журнал выходит что-то вроде этого:
Car LogFile Header
<text>
<text>
<text>
Car LogFile Header
<text>
Car LogFile Header
<and so forth>
Было бы выдаваемый так:
Car LogFile Header
<text>
<text>
<text>
-------------------
Car Logfile Header
<text>
<text>
я делал вверх/искал простой код, но не кажется, что это будет работать , Может ли кто-нибудь направить меня? Благодаря!
#!/bin/bash
# usage: pargrep <infile> <searchpattern>
inFile="$1"
searchString="$2"
awk '
BEGIN {
FS="\n"
RS="-----"
}
/'"$searchString"'/ { print }
' ${inFile}
«кажется, что он не работает» не очень информативен. Как его поведение отличается от того, что вы ожидаете и какие сообщения об ошибках вы получаете? –
Это дает ошибку «awk: cmd. Line: 6: //root/Desktop/Default.log/ {print} awk: cmd. Строка: 6:^синтаксическая ошибка awk: cmd. Строка: 6://root/Desktop/Default.log/ {print} awk: cmd. строка: 6:^unterminated regexp " – JavaNoob
было бы хорошо, если бы вы могли использовать образец ввода и ожидаемый результат. Спасибо – dogbane