Вернуть имя файла с zipgrep - PullRequest
0 голосов
/ 24 мая 2019

Я пытаюсь найти определенную строку в папке ZIP-файлов. Что бы я ни пытался, я не могу заставить zipgrep вернуть фактическое имя файла. (так, "file.zip")

Он продолжает возвращать файлы в zip

./ -type f -name "*.zip" -exec zipgrep -l -H "string" {} \;

Ожидаемый результат; "File.zip"

1 Ответ

1 голос
/ 24 мая 2019

grep удаляет имя файла, если есть только один файл:

grep "something" file.txt => you'll just see "something"

grep "something" *.txt    => you'll see "file.txt : something"

Итак, лучший способ увидеть имя файла - это поверить, что grep просматривает несколько файлов, например /dev/null.

Поэтому я бы предложил вам заменить:

zipgrep -l -H "string" {} \;

по:

zipgrep -l -H "string" {} /dev/null \;

Очевидно, в /dev/null ничего нет, но вы говорите grep просмотреть два файла, поэтому он добавит имя файла.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...