systemadmin.es » Utilidades » El operador OR de grep

El operador OR de grep

Para indicar a grep que queremos que no muestre todo lo que coincida con una cadena o otra lo debemos indicar mediante el operdor de OR: |. Veamos como:

Por ejemplo, para mostrar del my.cnf todas las lineas que no tengan comentarios ni espacios en blanco lo haríamos así:

$ grep -v "^#\|^$" /etc/my.cnf
[client]
port            = 3306
socket          = /tmp/mysql.sock
[mysqld]
port            = 3306
socket          = /tmp/mysql.sock
skip-locking
(...)

Mediante la expresión ^# indicamos todas las lineas que empiezan con el carácter #, con \| indicamos la condición de OR i a continuación con la expresión ^$ indicamos todas las lineas que empiezan y acaban (lineas vacías). Con el parámetro de grep -v le decimos que muestre las cadenas que no cumplen la expresión anteriormente mencionada, por lo que al final vemos todas las lineas que no estan vacias ni son comentarios (empiezan por #).

Relacionados

Imprimir Imprimir

2 comments to “El operador OR de grep”

  1. Mas facil aun:
    grep -v “^[#,$]” /etc/my.cnf

  2. Esta expresión no es correcta porque le estas diciendo que coja todo lo que empiece por “#” o “,” o “$”

Deja un comentario:

XHTML - Tags permitidos:<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>