Как сообщить имена файлов, найденные в строках после прохождения через grep?
Я был около *nix достаточно долго, чтобы помнить, что делал это в прошлом, и теперь эти нейронные пути исчезли... Я ищу / usr / local / lib файлы, которые содержат img_convert, потому что я получаю ссылку ошибка и хотите найти библиотеку для включения, которая содержит эту ссылку.
Эта команда находит ссылку, но не печатает содержащие имена файлов:
$ strings /usr/local/lib/* | grep 'img_convert'
img_convert
img_convert
Конечно, я мог бы написать это, но я уверен, что есть способ сделать это из командной строки... поэтому любая помощь приветствуется!
2 ответа
Решение
Пытаться
strings --print-file-name /usr/local/lib/* | grep 'img_convert'
Обратите внимание, что это будет работать с GNU strings
, но не обязательно с другими версиями.
Grep с удовольствием читает двоичные файлы и ищет саму строку, так
grep -l img_convert /usr/local/lib/*
должен делать то, что вы хотите.