Текстовый файл Greping

У меня есть текстовый файл:

Line1 aaa
Line2 aaa
Line3 aaa
Line4 importan info about Linux
Line5 infoA
Line6 infoB
Line7

Я хотел бы к строке дисплея, содержащей слово "Linux" и две строки больше.

Относительно первой части ясно:

cat textfile.txt |grep Linux

Но как отобразить две строки больше?

0
задан 18 September 2015 в 22:59

2 ответа

Awk альтернативный подход

$ awk '/Linux/ {print $0; for (i=1;i<=2;i++){ getline; print $0 } }' test-text-file.txt                               
Line4 importan info about Linux
Line5 infoA
Line6 infoB

Или как Pilot6, предложенный в комментариях, можно сделать

awk '/Linux/{x=NR+2}(NR<=x)' test-text-file.txt

0
ответ дан 28 July 2019 в 14:46

Используйте -A опция grep:

cat textfile.txt | grep -A2 Linux

или без cat:

grep -A2 Linux textfile.txt
6
ответ дан 28 July 2019 в 14:46

Другие вопросы по тегам:

Похожие вопросы: