Cómo encontrar archivos con cierto texto en la Terminal
Me gustaría encontrar todos los archivos que contienen una cierta cadena de texto. ¿Cómo lo harías en la 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"
La respuesta de Ignacio es genial y me ayudó a encontrar los archivos que contienen cierto texto. El único problema al que me enfrenté fue que al ejecutar este comando todos los archivos aparecerían en una lista, incluyendo uno en el que no aparecía el patrón.
No such file or directory
Esto es lo que veo junto a los archivos que no contienen el patrón.
Si en lugar de eso, añade -s
al comando, como en:grep -lr "text pattern" ./ -s
; grep -lr "text pattern" [PATH DIRECTORY] -s
se usa, sólo le mostrará qué archivos contienen el patrón.
De forma similar, si se usa el comando grep -nr "text pattern" ./ -s
; grep -nr "text pattern" [PATH OF DIRECTORY] -s
, imprime el archivo más el número de línea, y la ocurrencia del patrón.
Por favor, corríjame si mi comprensión es incorrecta. Referencia: ¿Cómo puedo hacer que grep no imprima los errores de ‘No such file or directory’?