LINUX.ORG.RU

Как sed вывести заданные абзацы из разных файлов?

 


0

1

Добрый тревожный вечер над фолиантами лора, сэры и леди!

Есть файлы со стихами , строфы разделёны пустыми строками:

$ ls -1 "~/Документы/стихи/Эдгар По/Ворон/"
'eng 1845.txt'
info
В.Бетаки.txt
'В.Брюсов 1905-24.txt'
Г.Аминов.txt
'Дм. Мережковский 1890.txt'
'К.Бальмонт 1894.txt'
'М.Зенкевич 2002.txt'
'проза-аноним 1885.txt'
'С.Муратов 2003.txt'

Задача вывести для сравнения переводов заданную строфу из двух файлов. Ориентироваться не на номера строк, а на разделители строф пустыми строками. Как бы это сделать наиболее правильно используя однострочную конструкцию sed? То есть не городя скриптов которые нужно класть в файл.

Ответ на: комментарий от rtxtxtrx

Вы меня запутали как с тремя напёрстками. Потерял нить где шарик) И как что-то сравнивать по пробелам? В каждом переводи хи разное количество. И строки могут начинаться с большого пробельного отступа вообще. Что-то вы усложняете. Резюме - предварительные редактирования файлов исключаются. Можно не sed и не awk. Но и не длиннющий скрипт на питоне. Мы все любим питона, но хочется в одно строку.

hikikomori ★★★
() автор топика
Ответ на: комментарий от anonymous

Спасибо, вы гений. Что означает FNR?

$ awk -vRS='' -vORS='\n\n' 'FNR == 19' eng\ 1845.txt  М.Зенкевич\ 2002.txt 
XVIII.
And the Raven, never flitting, still is sitting, still is sitting
On the pallid bust of Pallas just above my chamber door;
And his eyes have all the seeming of a demon's that is dreaming,
And the lamp-light o'er him streaming throws his shadow on the floor;
And my soul from out that shadow that lies floating on the floor
							Shall be lifted—nevermore!

          И сидит, сидит над дверью Ворон, оправляя перья,
          С бюста бледного Паллады не слетает с этих пор;
          Он глядит в недвижном взлете, словно демон тьмы в дремоте,
          И под люстрой, в позолоте, на полу, он тень простер,
          И душой из этой тени не взлечу я с этих пор.
                  Никогда, о, nevermore!


hikikomori ★★★
() автор топика