У меня есть текстовые файлы, из которых я хочу grep отредактировать код. Цель, которую я пытаюсь достичь, - начать просмотр в определенной строке и amp; то сможете читать что-нибудь ниже. Например. В приведенном ниже тексте, как просмотреть текстовый файл в начальной точке желтого. Я хочу просмотреть содержимое «желтого», а также все, что под ним, независимо от того, что это за содержание.
green
blue
cyan
magenta
purple
brown
yellow
red
orange
more orange
more blue
this is enough
Вы можете сделать это:
awk '/yellow/{f=1}f' file
где «файл» - это имя файла, содержащего ваш текст.
Не grep, но с использованием sed:
sed -n '/^yellow$/,$p' file
-n: запрещает печать /^yellow$/,$: диапазон адресов, который идет от первого появления строки, соответствующей точно yellow к последней строке включительно p: печатает строки в диапазоне адресов % sed -n '/^yellow$/,$p' file
yellow
red
orange
more orange
more blue
this is enough
Поздно к стороне:)
Использование grep:
grep -Pzo '(?s)\n\Kyellow\n.*' file.txt
-P позволяет нам использовать Perl-совместимое Regex -z делает входной файл разделенным ASCII NUL, скорее, что новая строка -o принимает только желаемую часть (?s) - модификатор DOTALL, позволяет нам сопоставлять новую строку с использованием токена . (любой символ). В \n\K, \n соответствует новой строке, \K отбрасывает совпадение yellow\n.*, совпадающее с yellow, за которым следует новая строка, и все после этого также выбирается и отображается на выходе. Пример:
% grep -Pzo '(?s)\n\Kyellow\n.*' file.txt
yellow
red
orange
more orange
more blue
this is enough
Использование little python:
#!/usr/bin/env python2
with open('file.txt') as f:
lines = f.readlines()
print ''.join(lines[lines.index('yellow\n'):])
-P позволяет нам для использования Perl-совместимого Regex -P позволяет использовать Perl-совместимый Regex
-z, делает входной файл разделенным ASCII NUL, а что новая строка [d6 ] -z делает входной файл разделенным с помощью ASCII NUL, скорее, чем новая строкаПоскольку вопрос относится к просмотру файла, всегда есть хороший ol '
less +/yellow file