Inicio·Comandos de terminal
Publicidad

Consigue tu bono en un exchange de criptomonedas

Bonos que recibes solo por registrarte. Las condiciones son las que publica cada exchange.

grep

Procesado de texto

Uso

grep -rn '[pattern]' [path]

Extrae las líneas que casan con un patrón; usa regex básica por defecto, así que + ? | y () requieren -E o una barra invertida.

Opciones habituales

OpciónSignificado
-iIgnore case
-rSearch a whole directory tree; -R also follows symlinks
-nPrint the line number of each hit
-vInvert: print the lines that do not match
-lPrint only the names of the files that matched
-wMatch whole words only
-EExtended regex, so + ? | and () work unescaped
-CPrint N lines of context around each hit

Ejemplos

grep -rn 'TODO' src/

Every TODO in the tree, with file and line.

grep -v '^#' nginx.conf

Drops the comment lines.

ps aux | grep '[n]ginx'

Finds nginx without matching the grep itself.

Están hechos para encadenarse con tuberías. Tres comandos unidos suelen ser más cortos que uno que lo haga todo.

Cómo leerlo

  • Los corchetes [ ] marcan una parte que puedes omitir.
  • Los puntos suspensivos … indican que puedes poner varios.
  • Las opciones distinguen mayúsculas: en algunos comandos -r y -R no hacen lo mismo.

Preguntas

Q¿Qué hace grep?

Extrae las líneas que casan con un patrón; usa regex básica por defecto, así que + ? | y () requieren -E o una barra invertida.

Q¿Cómo se escribe?

grep -rn '[pattern]' [path] — los corchetes marcan lo que puedes omitir.

Q¿Cuántas opciones vale la pena saber?

Aquí van 8; la lista completa está en man grep. Este comando está en Procesado de texto.

Comandos relacionados

página man: man grep