Я часто использую grep, чтобы найти файлы с определенной записью, подобной этой:
grep -R 'MyClassName'
Хорошо, что он возвращает файлы, их содержимое и помечает найденную строку красным цветом. Плохо то, что у меня также есть огромные файлы, где весь текст написан одной большой строкой. Теперь grep выводит слишком много при поиске текста в этих больших файлах. Есть ли способ ограничить вывод, например, 5 словами слева и справа? Или, может быть, ограничить вывод до 30 букв влево и вправо?
cut
, так как он разделяется только по разделителю или количеству символов. Хотя, когда я нахожу строку с MyClassName
ней, она может находиться где угодно в строке и не всегда в одной и той же позиции. Кроме того, могут быть различные символы спереди и сзади, что исключает возможность разделения по разделителю.
MyClassName
, я хочу получить в результате имя файла и символы x слева и справа. x - это любое число, которое я предоставляю, например, 30. Остальное содержимое файла должно игнорироваться. Это делается для того, чтобы получить контекст для соответствующих файлов и ограничить перегрузку.
cut
если есть три файла со следующим вводом: oiadfaosuoianavMyClassNameionaernaldfajd
и /(/&%%§%/(§(/MyClassName&((/$/$/(§/$&
и public class MyClassName { public static void main(String[] args) { } }
?
cut