Publicado el 11 de Diciembre del 2020
1.050 visualizaciones desde el 11 de Diciembre del 2020
70,3 KB
42 paginas
Creado hace 14a (18/10/2010)
Linux
Comandos de Filtro
C.E.T.P – E.M.T. – Informática – I.T.S – Sistemas Operativos III - Prof. Leonardo Carámbula
Introducción a Filtros
• Un grupo de comandos que leen alguna
transformación y
entrada, realizan una
escriben una salida.
– find
– grep
– egrep
– fgrep
– sort
– tr
– sed
– join
– unique
– head, tail
– wc
– cut
C.E.T.P – E.M.T. – Informática – I.T.S – Sistemas Operativos III - Prof. Leonardo Carámbula
Expresiones Regulares
• La expresiones regulares son patrones que
describen un conjunto de cadenas de
caracteres.
• Se utilizan en:
– operaciones de comparación.
– búsquedas o sustituciones de gran complejidad.
expresiones
• Las expresiones regulares se construyen como
las
utilizando
operadores para combinar expresiones más
pequeñas.
aritméticas,
C.E.T.P – E.M.T. – Informática – I.T.S – Sistemas Operativos III - Prof. Leonardo Carámbula
Expresiones Regulares
de metacaracteres
conjunto
• El
expresiones regulares es el siguiente:
para
\ ^ $ . [ ] { } | ( ) * + ?
C.E.T.P – E.M.T. – Informática – I.T.S – Sistemas Operativos III - Prof. Leonardo Carámbula
Expresiones Regulares
Operador Significado
C
\C
^
$
•
un caracter no especial concuerda
consigo mismo
elimina significado especial de un
caracter C. El \ escapa el significado
especial
indica comienzo de línea
indica final de la línea
(punto) un caracter, cualquiera menos
fin de línea)
C.E.T.P – E.M.T. – Informática – I.T.S – Sistemas Operativos III - Prof. Leonardo Carámbula
Expresiones Regulares
Operador Significado
[...]
un caracter cualquiera de los
caracteres ... Acepta intervalos del
tipo a-z, 0-9, A-Z
un caracter distinto de ... Acepta
intervalos del tipo a-z, 0-9, A-Z
0, 1 o más ocurrencias de la ER R
(repetición)
la ER R1 seguida de la ER R2
(concatenación)
[^...]
R*
R1R2
C.E.T.P – E.M.T. – Informática – I.T.S – Sistemas Operativos III - Prof. Leonardo Carámbula
Expresiones Regulares
Exp. Reg.
a.b
a..b
[abc]
[aA]
[aA][bB]
Coincide con
aXb aab abb adb a9b ...
aXXb aaab abbb a6;b ...
a b c (cadenas de un caracter)
a A (cadenas de un caracter)
ab Ab aB AB (cadenas de dos
caracteres)
[0123456789] 0 1 2 3 4 5 6 7 8 9
C.E.T.P – E.M.T. – Informática – I.T.S – Sistemas Operativos III - Prof. Leonardo Carámbula
Expresiones Regulares
Coincide con
0 1 2 3 4 5 6 7 8 9
A B C ... Z a b c ... z
Exp. Reg.
[0-9]
[A-Za-z]
[0-9][0-9][0-9] 000 001 … 009 010 … 019 100 … 999
cadena vacía, 0 1 9 00 99 123 456 999
[0-9]*
9999 ...
0 1 9 00 99 123 456 999 9999 99999
99999999 …
cualquier línea con más de un caracter
[0-9][0-9]*
^.*$
C.E.T.P – E.M.T. – Informática – I.T.S – Sistemas Operativos III - Prof. Leonardo Carámbula
Expresiones Regulares Extendidas
• Algunos comandos, como egrep o grep -E,
aceptan Expresiones Regulares Extendidas.
• Comprenden
las Expresiones Regulares
Básicas más algunos operadores que permiten
construcciones más complejas.
C.E.T.P – E.M.T. – Informática – I.T.S – Sistemas Operativos III - Prof. Leonardo Carámbula
Expresiones Regulares Extendidas
Operador
• R+
• R?
• R{N}
• R{N,}
• R{,M}
Significado
1 o más ocurrencias de la Exp.
Reg. R
0 o una ocurrencia de la Exp. Reg.
R, y no más
N ocurrencias de la Exp. Reg. R
N o más ocurrencias de la Exp.
Reg. R
0 o a lo sumo M ocurrencias de la
Exp. Reg. R
C.E.T.P – E.M.T. – Informática – I.T.S – Sistemas Operativos III - Prof. Leonardo Carámbula
Expresiones Regulares Extendidas
Operador
• R{n,m}
• R1|R2
• (R)
• “R"
Significado
N o más ocurrencias de la Exp.
Reg. R, pero a lo sumo M
la Exp. Reg. R1 o la Exp. Reg. R2
(alternativa)
Exp. Reg. anidada
evita que los caracteres de la Exp.
Reg. R sean interpretados por el
shell
C.E.T.P – E.M.T. – Informática – I.T.S – Sistemas Operativos III - Prof. Leonardo Carámbula
Expresiones Regulares Extendidas
• Ejemplos
– [0-9]+
• 0 1 9 00 99 123 456 999 9999 99999 99999999 ..
– [0-9]?
• cadena vacía, 0 1 2 .. 9
– ^a|b
• a b
C.E.T.P – E.M.T. – Informática – I.T.S – Sistemas Operativos III - Prof. Leonardo Carámbula
Expresiones Regulares Extendidas
• Ejemplos
– (ab)*
• cadena vacía, ab abab ababab ...
– ^[0-9]?b
• b 0b 1b 2b .. 9b
– ([0-9]+ab)*
• cadena vacía, 1234ab 9ab9ab9ab 9876543210ab
99ab99ab ...
C.E.T.P – E.M.T. – Informática – I.T.S – Sistemas Operativos III - Prof. Leonardo Carámbula
Comando grep, egrep y fgrep
• grep [ -e PATRON | -f ARCHIVO | PATRON ]
OPCIONES ARCHIVO ...
– recorre los archivos indicados extrayendo las
líneas que coinciden con un patrón de cadena de
caracteres.
C.E.T.P – E.M.T. – Informática – I.T.S – Sistemas Operativos III - Prof. Leonardo Carámbula
Comando grep, egrep y fgrep
– G el patrón es una expresión regular básica.
opción por defecto.
– E el patrón es una expresión regular
extendida.
– F el patrón es una cadena fija.
• Existen dos variantes:
• egrep similar a grep -E
• fgrep igual a grep -F.
C.E.T.P – E.M.T. – Informática – I.T.S – Sistemas Operativos III - Prof. Leonardo Carámbula
Comando grep, egrep y fgrep
• Parámetros:
– c
– e PATRON usa el patrón indicado; útil cuando el
sólo muestra la cantidad de líneas
patrón empieza con -
– f ARCHIVO obtiene los patrones del archivo, uno por
– h
– i
línea
suprime indicación de archivo cuando se
busca en varios archivos
ignora mayúsculas y minúsculas en el
patrón y en los archivos
C.E.T.P – E.M.T. – Informática – I.T.S – Sistemas Operativos III - Prof. Leonardo Carámbula
Comando grep, egrep y fgrep
• Parámetros:
indicar número de línea
– n
– v muestra las líneas que no coinciden con el
patrón
– w hace coincidir el patrón como una palabra
– x
el patrón coincide con toda la línea
C.E.T.P – E.M.T. – Informática – I.T.S – Sistemas Operativos III - Prof. Leonardo Carámbula
Comando find
• find [DIRECTORIO...] [EXPRESION]
– Recorre un árbol de directorios buscando archivos
según una expresión y muestra información sobre
los encontrados.
C.E.T.P – E.M.T. – Informática – I.T.S – Sistemas Operativos III - Prof. Leonardo Carámbula
Comando find
• Criterios de búsqueda, con patrones:
– name PATRON el nombre se ajusta con
PATRON
– iname PATRON idem,insensible a mayúculas
– path PATRON nombre con vía completa
– ipath PATRON idem, insensible a mayústulas
– regexp EXP
nombre se ajusta con expresión
regular EXP
idem, insensible a mayúsculas
– iregexp EXP
C.E.T.P – E.M.T. – Informática – I.T.S – Sistemas Operativos III - Prof. Leonardo Carámbula
Comando find
• Criterios de búsqueda, con enlaces:
archivo es un enlace simbólico
– lname PATRON
– ilname PATRON idem, insensible a mayúsculas
• Criterios de búsqueda, con tamaño:
– size N[bckw]
– empty
de tamaño = N
b = bloques,
c = caracteres,
k = KB
w = palabras (2 bytes)
archivo vacío o directorio
C.E.T.P – E.M.T. – Informática – I.T.S – Sistemas Operativos III - Prof. Leonardo Carámbula
Comando find
• Criterios de búsqueda, con fechas:
– atime N último acceso N*24 horas atrás
– ctime N último cambio de estado N*24 horas
atrás
– mtime N última modificación N*24 horas atrás
– amin N
– cmin N
último acceso N minutos atrás
último cambio de estado N minutos
horas atrás
– mmin N última modificación N minutos atrás
– daystart mide tiempos desde las 0 horas de hoy
C.E.T.P – E.M.T. – Informática – I.T.S – Sistemas Operativos III - Prof. Leonardo Carámbula
Comando find
• Criterios de búsqueda, con usuarios:
archivo del usuario UNAME
– user UNAME
– group GNAME archivo del grupo GNAME
– uid N
– gid N
– nouser
– nogroup
archivo del usuario de número N
archivo del grupo de número N
archivo sin dueño asignado
archivo sin grupo asignado
C.E.T.P – E.M.T. – Informática – I.T.S – Sistemas Operativos III - Prof. Leonardo Carámbula
Comando find
• Argumentos numéricos:
+N mayor que N
– N menor que N
N
exactamente N
C.E.T.P – E.M.T. – Informática – I.T.S – Sistemas Operativos III - Prof. Leonardo Carámbula
Comando find
• Acciones a realizar con archivos encontrados:
– print
• imprime la ruta completa de los archivos
encontrados.
– ls
• lista los archivos encontrados en formato ls -dils
– exec COMANDO {} \;
• ejecuta COMANDO sobre los archivos
encontrados
C.E.T.P – E.M.T. – Informática – I.T.S – Sistemas Operativos III - Prof. Leonardo Carámbula
Comando find
• Ejemplos:
find /etc -name '*.texto'
– busca en el directorio indicado los archivos de nombre
indicado.
find /usr/src -name '*.c' -size +100k -print
– muestra nombres de archivos terminados en .c con
tamaño mayor de 100 Kb.
find . -lname '*system.c'
– busca enlaces simbólicos del nombre indicado.
C.E.T.P – E.M.T. – Informática – I.T.S – Sistemas Operativos III - Prof. Leonardo Carámbula
Comando find
• Ejemplos:
find /bin -amin +2 -amin -6
– archivos que fueron leídos entre 2 y 6 minutos atrás.
– La medición de tiempos se hace desde 24 horas atrás
(1 día atrás), para medir tiempos desde las 0 horas del
día de hoy, usar la opción -daystart.
find ~ -daystart -type f -mtime 1
– archivos que fueron modificados ayer.
find / -empty -exec rm -rf '{}' ';'
– busca archivos o directorios vacíos y los elimina.
C.E.T.P – E.M.T. – Informática – I.T.S – Sistemas Operativos III - Prof. Leonardo Carámbula
Comando sort
• sort [OPCIONES] [ARCHIVO...]
– ordena, mezcla o compara todas las líneas
de los archivos indicados o de la entrada
estándar.
– Tiene 3 modos de operación:
• ordenar
• verificar orden
• mezclar archivos
C.E.T.P – E.M.T. – Informática – I.T.S – Sistemas Operativos III - Prof. Leonardo Carámbula
Comando sort
• Parámetros:
– c verifica si los archivos ya están ordenados
– m mezcla archivos ordenados en uno solo, ordenado
– b ignora blancos adelante en la ordenación
– d ordena considerando sólo letras, números y
blancos
ignora caracteres no imprimibles
– f ordena como si todas fueran mayúsculas
– i
– n ordena como valores numéricos y no como
Comentarios de: LInux - Comandos de Filtro (0)
No hay comentarios