Часто бывает так что необходимо найти какую либо строку в огромном проекте на битрикс, ни одна IDE не справляется с таким поиском, по крайней мере не быстро. Чтобы ускорить процесс поиска нужного кода не раз ипользовал эту замечательную команду grep в терминале ubuntu.
Вот краткий справочник по командам:
grep pattern file.txt --поиск pattern в файле file.txt, с выводом полностью совпавшей строкой grep -o pattern file.txt --поиск pattern в файле file.txt и вывод только совпавшего куска строки grep -i pattern file.txt --игнорирование регистра при поиске grep -bn pattern file.txt --показать строку (-n) и столбец (-b), где был найден pattern grep -v pattern file.txt --инверсия поиска (найдет все строки, которые не совпадают с шаблоном pattern) grep -A 3 pattern file.txt --вывод дополнительных трех строк, после совпавшей grep -B 3 pattern file.txt --вывод дополнительных трех строк, перед совпавшей grep -C 3 pattern file.txt --вывод три дополнительные строки перед и после совпавшей grep -r pattern $HOME --рекурсивный поиск по директории $HOME и всем вложенным grep -c pattern file.txt --подсчет совпадений grep -L pattern *.txt --вывести список txt-файлов, которые не содержат pattern grep -l pattern *.txt --вывести список txt-файлов, которые содержат pattern grep -w pattern file.txt --совпадение только с полным словом pattern grep -f patterns.txt file.txt --поиск по нескольким pattern из файла patterns.txt, шаблоны разделяются новой строкой grep -I pattern file.txt --игнорирование бинарных файлов grep -v -f file2 file1 > file3 --вывод строк, которые есть в file1 и нет в file2 grep -in -e 'python' `find -type f` --рекурсивный поиск файлов, содержащих слово python с выводом номера строки и совпадений grep -inc -e 'test' `find -type f` | grep -v :0 --рекурсивный поиск файлов, содержащих слово python с выводом количества совпадений grep . *.py --вывод содержимого всех py-файлов, предваряя каждую строку именем файла grep "Http404" apps/**/*.py --рекурсивный поиск упоминаний Http404 в директории apps в py-файлах