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ón | Significado |
|---|---|
| -i | Ignore case |
| -r | Search a whole directory tree; -R also follows symlinks |
| -n | Print the line number of each hit |
| -v | Invert: print the lines that do not match |
| -l | Print only the names of the files that matched |
| -w | Match whole words only |
| -E | Extended regex, so + ? | and () work unescaped |
| -C | Print N lines of context around each hit |
Ejemplos
grep -rn 'TODO' src/Every TODO in the tree, with file and line.
grep -v '^#' nginx.confDrops 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