Поиск функции по кодовой базе
Сегодня поделюсь с вами командой, которая позволяет легко и быстро найти нужную вам функцию по всей вашей кодовой базе.
В моем случае мне нужно найти мою реализацию очереди на Питоне, которую я когда-то делал, но не помню, в каком проекте. Для этого я использовал следующую команду:
Разберем ее по частям:
⁃
⁃ далее идет папка, в которой мы будем искать:
⁃ после
⁃ вертикальная черта
⁃ после вертикальной черты идет команда поиска внутри переданных файлов из команды, стоящей до черты
Для удобства, мы можем использовать следующие варианты команды.
Вывести все найденные строки в файл:
Не искать в питоновских подключаемых пакетах в папках
#junior #middle #shell #command_line
Сегодня поделюсь с вами командой, которая позволяет легко и быстро найти нужную вам функцию по всей вашей кодовой базе.
В моем случае мне нужно найти мою реализацию очереди на Питоне, которую я когда-то делал, но не помню, в каком проекте. Для этого я использовал следующую команду:
find ~/repos -name "*.py" | xargs grep -i "queue”
Разберем ее по частям:
⁃
find
– команда, которая производит поиск файлов⁃ далее идет папка, в которой мы будем искать:
~/repos
⁃ после
-name
указываем, в каких файлах будем искать (в нашем случае это все питоновские файлы)⁃ вертикальная черта
|
означает перенаправление вывода в следующую команду, то есть результат выполнения команды find ~/repos -name "*.py"
будет передан в следующую команду, а не напечатан в терминале⁃ после вертикальной черты идет команда поиска внутри переданных файлов из команды, стоящей до черты
Для удобства, мы можем использовать следующие варианты команды.
Вывести все найденные строки в файл:
find ~/repos -name "*.py" | xargs grep -i "queue" > ~/temp/find_queue.txt
Не искать в питоновских подключаемых пакетах в папках
site-packages
:find ~/repos -name "*.py" -not -path '*/site-packages/*' | xargs grep -i "queue”
#junior #middle #shell #command_line
👍2👎1🤔1