Lección 17 / 20

Lo básico de grep, sed y awk

En esta lección contarás cuántas líneas de un registro contienen una palabra.

grep filtra líneas por un patrón, y con -c devuelve cuántas encontró en vez de mostrarlas. Los otros dos compañeros habituales son sed, que sustituye texto, y awk, que trabaja con columnas.

El código de ejemplo cuenta las líneas de nivel ERROR del registro.

Fíjate en que los mensajes del registro están en español pero los niveles siguen en inglés. No es un descuido: los niveles de registro se escriben en inglés en prácticamente todo el software, y un guion que busque «ERROR» funciona igual en cualquier país. Es justo el tipo de cosa que conviene no traducir.

Con estos tres comandos se resuelve la mayor parte del trabajo diario con archivos de texto: grep "ERROR" app.log | wc -l cuenta errores, sed 's/antiguo/nuevo/g' reemplaza en masa y awk '{print $1}' se queda con la primera columna. Aprender solo estos tres ya cambia bastante la relación con la terminal.

📖 Código de referencia
✍️ Tu código
Escribe tu código y pulsa «Ejecutar»

🧪 Este sitio no puede compilar ni ejecutar Shell Script directamente, así que comprueba al instante si lo que escribiste coincide con el código de referencia (la corrección ocurre por completo en tu navegador; no se envía nada a ningún servidor).

Espacio publicitario (banner)
Espacio publicitario (en el artículo)