Ответ 1
большинство greps позволяют использовать флаг "context", что делает его более читаемым:
grep --context=3 foo myfile.txt
команда grep действительно мощная, и я использую ее много.
Когда-то мне нужно найти что-то с grep, находящееся во многих файлах, чтобы найти строку, которую я едва помню, помогая себе с опцией -i (игнорировать), -r (рекурсивный), а также -v (исключить).
Но мне действительно нужно иметь специальный вывод grep, который выделяет соответствующие строки и строки в окрестности (учитывая соответствующую строку, которую я хотел бы видеть, допустим, 2 предшествующие и 2 последующих строки).
Есть ли способ получить этот результат с помощью bash?
большинство greps позволяют использовать флаг "context", что делает его более читаемым:
grep --context=3 foo myfile.txt
Grep сам сделает это
grep -A 2 -B 2 foo myfile.txt
Вы можете опустить -C
grep -2 foo myfile.txt
равно
grep -C 2 foo myfile.txt