grep с регулярным выражением - PullRequest
2 голосов
/ 28 февраля 2012

У меня есть файл file.txt, который выглядит как

dfvdfvdf
lot of stuff I don't care
fdvdegghedc
Run test suite LogicTests
ffdvfvdf
fdvdfvdf
fhtrefg

И я хочу получить все от запуска тестового набора LogicTests до конца файла Так что я делаю как следует

resultCroped=$(grep -E 'Run test suite LogicTests[\n.*]' file.txt)

но, похоже, это не хорошее правило

помогите пожалуйста, спасибо

Ответы [ 3 ]

3 голосов
/ 28 февраля 2012

sed было бы более подходящим для такого рода задач:

sed -n '/^Run test suite LogicTests$/,$p' <file>

Это напечатает все строки из совпадения регулярного выражения до конца файла в соответствии с запросом.

2 голосов
/ 28 февраля 2012

вариант awk:

awk '/Run test suite LogicTests/{o=1}o' yourFile
1 голос
/ 28 февраля 2012

Вы можете использовать что-то вроде grep -A 1000 'Run test suite LogicTests', которое вернет вам 1000 строк после искомой строки.

...