Вы нашли файл, не зная его имени, а только его содержимого? [дубликат]

У меня есть жесткий диск, заполненный файлами, и мне нужно найти конкретный файл, не зная его имени. Все, что я знаю, это то, что файл содержит список адресов электронной почты. Есть ли способ найти его?

2
задан 30 July 2015 в 17:11

2 ответа

Можно попытаться использовать grep -r:

Вот пример, где я держал для текста "listen_address" в любом файле от моего домашнего dir:

aploetz@dockingBay94:~$ grep -r listen_address *
Documents/stackOverFlowAnswer_connectToCassandra.txt~:If you are connecting to Cassandra from your localhost only (a sandbox machine), then you can set the `listen_address` in your cassandra.yaml:
Documents/stackOverFlowAnswer_connectToCassandra.txt~:    listen_address: localhost
Documents/stackOverFlowAnswer_connectToCassandra.txt:If you are connecting to Cassandra from your localhost only (a sandbox machine), then you can set the `listen_address` in your cassandra.yaml:
Documents/stackOverFlowAnswer_connectToCassandra.txt:    listen_address: localhost
Documents/stackOverFlowAnswer_connectToCassandra.txt:    listen_address: dockingBay94
Ubuntu One/cassandraClass/cassandra.yaml:listen_address: $(HOSTNAME)
Ubuntu One/cassandraClass/cassandra.yaml:# Leaving this blank will set it to the same value as listen_address
1
ответ дан 2 December 2019 в 03:52

Через find и grep

я не использую grep -r, потому что в системах POSIX, Вы не находите -r параметр для grep.

find . -type f -print0 | xargs -0 grep 'your_email_address' {} \;

Или

find . -type f -exec grep -l -- 'your_email_address' +

существует много возможностей.

команда находит все файлы в текущей папке и подпапках и передает результат grep. grep находит файлы с your_email_address.

1
ответ дан 2 December 2019 в 03:52

Другие вопросы по тегам:

Похожие вопросы: