COMANDO LINUX GREP

Archivos como el de configuración de samba  suelen tener comentarios que explican o detallan la variable a configurar. Esto ayuda pero a veces solo queremos mostrar las variables sin comentarios, es decir eliminando las líneas que empiezan con “#” o con “;”.

, un comando buscador de patrones o expresiones regulares en archivos de texto.

Ejemplo1: grep “#” /etc/squid/squid.conf

Aquí el patrón o expresión a buscar es “#” y el resultado mostrado serán todas las líneas que contengan el carácter #.

Si usamos la opción -v el resultado será lo inverso de lo solicitado, es decir, todas las líneas del archivo que no tengan el carácter o patrón buscado:

Ejemplo2: grep -v “#” /etc/squid/squid.conf

Para limpiarlo más todavía con la ayuda de pipe (|) y del comando sed, eliminaremos las líneas vacías, dejando solo las líneas con texto:

Ejemplo3: grep -v “#” /etc/squid/squid.conf | sed -e ‘/^$/d’

Con sed estamos usando una expresión “-e ‘/^$/d'” que se encarga de examinar cada línea del archivo desde el comienzo ^ hasta el final $ de la línea y si no tiene ningún carácter, entonces la elimína de la salida ‘/d’ (delete).

Jorge Valverde Ortiz