У меня есть текстовый файл ввода с абзацами в нем, которые разделены тремя пустыми строками. Пример:awk напечатать в верхней части выходного файла
P1
P1
empty line here
empty line here
empty line here
P2
P2
empty line here
empty line here
empty line here
P3
P3
empty line here
empty line here
empty line here
В настоящее время я использую этот код, написанный в файл * .awk, чтобы получить пункты:
BEGIN{ORS=RS="\n\n\n"}
/some text pattern comes here because I dont want to print every paragraph just some of them but in reversed order/
Так что я хотел бы выходной файл выглядеть следующим образом:
P3
P3
empty line here
empty line here
empty line here
P2
P2
empty line here
empty line here
empty line here
P1
P1
empty line here
empty line here
empty line here
Так что мне было интересно, могу ли я напечатать каждый абзац в верхней части выходного файла, чтобы получить обратный порядок. Можно ли это сделать?
Почему бы вам не написать «пустую строку здесь» вместо того, чтобы просто иметь пустую строку ??? Теперь нам нужно удалить этот текст, чтобы создать образец ввода и ожидаемый результат, если мы хотим проверить потенциальное решение. Обратите внимание, что только gawk поддерживает многозначные значения RS, POSIX awks свободно игнорируют все, кроме первого символа. Вы МОЖЕТЕ посмотреть в 'RS =" "'.Если вы исправите ваш образец ввода и ожидаемый результат, который будет тестироваться как есть, другие могут взглянуть на него. –