Você pode usar o grep para windows (nessa resposta existem várias opções de download - link ).
Um exemplo de comando que corresponderá (ele pesquisará uma correspondência regex recursivamente de onde é executada):
grep -r -E ".+\@.+\..+" *
O arquivo encontrado contém isto:
[email protected]
[email protected]
[email protected]
pipi
nana
anilopo $ a8
Ele imprimirá as 3 linhas de e-mail, próximas ao nome do arquivo. Ficará assim:
new/yo.txt:[email protected]
Onde yo.txt é o arquivo que contém as strings acima e localizado na pasta 'new'
Se você quiser apenas os nomes dos arquivos, poderá adicionar o parâmetro -l
ao grep:
grep -l -r -E ".+\@.+\..+" *
E só imprimirá: new/yo.txt
A expressão regular que usei é muito simples e provavelmente encontra mais coisas, porque não é exata. Você pode pesquisar na web por uma expressão regular melhor para verificar os endereços de e-mail e alterar ".+\@.+\..+"
com o que encontrou.
Espero que ajude!