Назад | Перейти на главную страницу

Как сообщить об именах файлов, найденных строками после передачи через grep?

Я был с * nix достаточно долго, чтобы вспомнить, что делал это в прошлом, и теперь эти нейронные пути исчезли ... Я ищу / usr / local / lib для файлов, содержащих img_convert потому что я получаю сообщение об ошибке ссылки и хочу найти библиотеку для включения, которая содержит эту ссылку.

Эта команда находит ссылку, но не выводит имена файлов, содержащих ее:

$ strings /usr/local/lib/* | grep 'img_convert'
img_convert
img_convert

Конечно, я мог бы написать сценарий, но я уверен, что есть способ сделать это из командной строки ... так что любая помощь приветствуется!

Grep с удовольствием читает двоичные файлы и ищет саму строку, поэтому

grep -l img_convert /usr/local/lib/* 

должен делать то, что хочешь.

Пытаться

strings --print-file-name /usr/local/lib/* | grep 'img_convert'

Обратите внимание, что это будет работать с GNU strings, но не обязательно с другими версиями.