jueves, 16 de junio de 2016

Negación

Si el primer carácter en una expresión entre corchetes es el símbolo de intercalación (^), los caracteres restantes se toman como una colección de caracteres que no deben estar presentes en la posición dada. Podemos hacer esto modificando nuestro ejemplo anterior:

[me@linuxbox ~]$ grep -h '[^bg]zip' dirlist*.txt
bunzip2
gunzip
funzip
gpg-zip
preunzip
prezip
prezip-bin
unzip
unzipsfx

Con la negación activada, obtenemos una lista de archivos que contienen la cadena "zip" precedida de cualquier carácter excepto "b" o "g". Fíjate que el archivo zip no ha sido encontrado. Una configuración de negación de carácter requiere todavía un carácter en la posición dada, pero el carácter no debe ser un miembro del conjunto negado.

El símbolo de intercalación sólo implica negación si es el primer carácter dentro de una expresión entre corchetes; de otra forma, pierde su significado especial y pasa a ser un carácter ordinario en la colección de caracteres.

No hay comentarios:

Publicar un comentario