Мне нужно искать в файловой системе текстовые строки, которые соответствуют какой-либо строке. Я пытаюсь понять, где используются команды, то есть, в каких файлах они вызываются или используются. Мне нужно найти каждый файл, где используется любой из этих текстов: shareEventHandler.php или repToolBroker.php или loginProctor.php или messageBroker.php или emailBroker.php . Как я могу сделать это, используя grep или find? Кто-нибудь может мне помочь?

1 ответ1

2

Найти используется для имен файлов. Grep используется для поиска в файле или файлах. Так что для этого мы будем использовать grep.

Из корневого каталога, в котором вы хотите искать, запустите:

grep -r 'shareEventHandler.php\|repToolBroker.php\|loginProctor.php\|messageBroker.php\|emailBroker.php' .
  • grep - поисковое приложение
  • -r рекурсивный поиск из этого каталога вниз
  • Используйте "\|" между поисковыми терминами
  • "" используется для указания текущего каталога

Альтернативой будет использование RegEx:

grep -rE '((shareEventHandler)|repToolBroker|loginProctor|messageBroker|emailBroker)(\.php)' .
  • -E RegEx флаг

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .