Expresiones reglares: es un patrón que define a un conjunto de cadenas y caracteres. Se representa con un carácter sencillo que puede ser continuado con uno o varios caracteres de repetición.
^ representa el inicio de una línea.
$ representa el final de una línea.
? el elemento precedente es opcional y debe coincidir al menos una vez
* el elemento precedente debe coincidir cero o más veces.
+ el elemento precedente debe coincidir cero o más veces.
. representa cual quier caracter.
{n} el elemento debe coincidir n veces
{,m} el elemento es opcional y debe coincidir al menos m veces.
{n,m} el elemento precedente debe coincidir al menos n veces, pero no más de m.
Un Filtro es un programa que recibe una entrada, lo procesa y emite una salida.
cat: para mostrar el contenido de un archivo.
grep: imprime en pantalla únicamente las líneas que se le indiquen
tail: ve las ultimas líneas de un archivo
cut: se usa para cortar y pasar a una salida estandar.
less, more: crean una salida paginada
sort: ordena el contenido del archivo en orden alfabético.
tr: altera la entrada de forma ordenada
com y diff: compara dos archivos.
wc: cuenta la entrada.
tr: permite cambiar determinado caracter por otro.
sort: nos permite tener una salida ordenada. -c (con cut): corta columnas.
-f (con cut): corta campos.
-d(al cortar campo): especifica los caracteres de separación entre campos.
comm: nos permite comparar el contenido de dos archivos línea por línea.
A continuación se presentan algunas sentencias con grep, cut y sed:
tome como ejemplo lo siguiente:
datos.txt
gato libro atunn gotas atas
pes gaita ##%% dato oso
.esrc expreso atun gota loco
GAto tierra Gata nada raton
gata canica atunnn fuente gatos
fin
Sentencias:
grep
-Buscar gato en datos.txt
grep gato datos.txt
-Mostrar las líneas del archivo que comiencen con gato
grep "^gato" datos.txt
grep "gat[oa]" datos.txt
-Busca en el archivo aquellas líneas que contengan tres caracteres (los puntos tómelos como numero de espacios)
grep "^...$" datos.txt
grep "[A-Z][A-Z]" datos.txt
-Muestra las líneas que coinciden con un caracter especifico.
grep "^\." datos.txt
grep "^[^.]" datos.txt
-Muestra la línea que contenga cierto numero de caracteres repetidos (tres).
grep "n\{3,\}" datos.txt
grep "a.o" datos.txt
cut
-Muestra los primeros 6 caracteres de una columna
cut -c1-6 datos.txt
-Muestra los 6 primeros caracteres de la columna uno y los caracteres 12 al 15 de la línea
cut -c1-6, 12-15 datos.txt
-Muestra los caracteres de una fila, solamente una columna
cut -f1-d ' ' datos.txt
-Muestra columna 1 y columna3:
cut -f1,3 -d ' ' datos.txt
-Cuenta los elementos guardados en datos01.txt de la columna 1 y 3.
cut -f1,3 -d ' ' datos.txt > datos01.txt | wc -l datos01.txt
sed
-Muestra un archivo seleccionado con el número de espacios y guarda.
sed 3p datos.txt | grep "^...s" > datos02.txt
-Lanza la línea 03 de datos.txt
sed -n 3p datos.txt
-Lanza las líneas 2 y 5 de datos.txt
sed -n 2,5p datos.txt
-Lanza las líneas que comienzan con p y las líneas que siguen de esta
sed -n '/^p/$p' datos.txt
-Muestra todas las líneas excepto de la 1 a la 3
sed '1,3d' datos.txt
-Muestra las líneas que no contengan las letras g y p
sed'^/[g-p]/d' datos.txt
espere más sentencias...
Materia: UNIX
Lic. en Informática Janet López.
Instituto Tecnologico de Zacatecas
0 Opiniones:
Publicar un comentario