Como encontrar ficheiros com determinado texto no Terminal
Gostaria de encontrar todos os ficheiros que contenham uma determinada sequência de texto. Como é que o faria no Terminal?
grep -r 'text goes here' path_goes_here
brew install ack
ack "text goes here"
find . |grep "text goes here"
grep -RnslI "text goes here"
A resposta do Ignacio é óptima e ajudou-me a encontrar os ficheiros que contêm determinado texto. O único problema que eu estava enfrentando era que ao executar este comando todos os arquivos seriam listados, incluindo um onde o padrão não aparecesse.
No such file or directory
Isto é o que eu vejo ao lado de arquivos que não contêm o padrão.
Se em vez disso adicionar -s
ao comando, como em:grep -lr "text pattern" ./ -s
; grep -lr "text pattern" [PATH DIRECTORY] -s
é usado, só lhe mostrará que ficheiros contêm o padrão.
Da mesma forma se grep -nr "text pattern" ./ -s
; comando grep -nr "text pattern" [PATH OF DIRECTORY] -s
é usado, imprime o ficheiro mais o número da linha, e a ocorrência do padrão.
Por favor corrige-me se o meu entendimento estiver errado. Referência: Como é que o grep não imprime erros de “Nenhum ficheiro ou directório deste tipo”?