© 2004-2006 Manuel ColladoAWK-1 Herramientas Grep y AWK Grep: Globally search for Reg. Expr. and Print (UNIX - editor “ed” - g/re/ p) AWK: Aho, Weinberger.

Slides:



Advertisements
Presentaciones similares
Laboratorio Lenguaje de Programación ING2101
Advertisements

Estructuras de control
ESTRUCTURAS DE CONTROL
DATSI, FI, UPM José M. Peña Programación en C DATSI, FI, UPM José M. Peña Programación en C.
Programación de Computadores
ING SEC 3 - UCSC Agosto 2009 Laboratorio Lenguaje de Programación ING – Universidad Católica SSMA Concepción Semestre II Tema:
Lenguaje PHP Capítulo 4.
Pippy (Python para niños)‏ 1.
Introducción a Transact-SQL
Te presento a Python Qué es Python? Lenguaje interpretado
PHP-MYSQL OPERADORES EN PHP
Metodología de la Programación
Repaso para la construcción del intérprete 2012
Fundamentos de la Programación Estructurada
4 – Filtros Programación II Ing. Diego J. Arcusin
Tema 2: Lenguaje PHP básico
Procesadores de Lenguajes I
Herramientas Grep y AWK
ALGORÍTMICA Dpto. Ingeniería de Sistemas y Automática
Algoritmos de Búsqueda
Una breve introducción
Conceptos Básicos de Java
2 Acciones y funciones 2.1 Concepto
Universidad de Tarapacá Fundamentos Lenguaje y Programación Rodrigo Cornejo Mejías Jonathan Cea Chávez Marcelo Gómez Gonzales.
TÉCNICO EN PROGRAMACIÓN DE SOFTWARE Instructor: Ingeniero Adrián Guerrero Taborda
Ingeniero Anyelo Quintero
Lenguaje C.
Semana 5 Subprogramas..
Características de “C” Y Esta conformado por un Ambiente Integrado. Y Es un Lenguaje de Nivel medio. Y Es un compilador. YContiene un conjunto de palabras.
Estructuras de Iteracion (Repetitivas ) while , for,, do-while
Programación en Matlab
Matrices Es una estructura homogénea, compuesta por varios elementos, todos del mismo tipo y almacenados consecutivamente en memoria A cada elemento se.
CI TEORIA semana 4 Estructura Algorítmica: SELECCIÓN
PAGINAS DINAMICAS PHP. INTRODUCCION PHP (Profesional Home Pages - Páginas Personales Profesionales) es un lenguaje para la creación de páginas web incrustado.
Página Web del Lenguaje Pascal.
Pulse para añadir texto Desarrollo de sitios web con PHP y MySQL Tema 2: Lenguaje PHP básico Elaborado por: José Mariano González Romano
Informática Ingeniería en Electrónica y Automática Industrial
Conversión cadena a número
PHP TODO SOBRE PHP.
Compiladores (23/04/ :35) Compiladores Tema 3 Análisis Lexicográfico Scanners.
Sesión 5 Sentencias de Selección y repetición Prof:Eridan Otto Programación de Computadores Lenguaje Pascal.
COMPUTACION 2009 C lase 4 Programa PASCAL SENTENCIAS DATOS Expresiones Tipos Declaración de variables Declaración de variables Asignación Entrada/Salida.
Diseñando la arquitectura de aplicaciones empresariales. Acceso al SQL Server.- Autenticación de usuario:
NVA-LNG1 3. SENTENCIAS. NVA-LNG2 Asignación Es una sentencia que almacena: el valor del argumento ubicado a la derecha del símbolo que la representa En.
EXPRESIONES Y SENTENCIAS
CONSULTAS SENCILLAS A LA BASE DE DATOS
Objetivo Mostrar los fundamentos de la programación a través de ejemplos y prácticas utilizadas cotidianamente en el desarrollo de aplicaciones.
Términos algoritmo diseñar algoritmo implementar algoritmo
PEDRO ALBERTO ARIAS QUINTERO. El shell es un intérprete de órdenes, los intérpretes de órdenes de Linux son auténticos lenguajes de programación. Como.
Contenido:  ¿Qué son los Punteros?  Los Procedimientos: New y Dispose.
Visual Basic FUNCIONES Y PROCEDIMIENTOS
Vamos a tratar algunos temas que es necesario conocer a la hora de administrar un sistema informático y que nos van a ser útiles sin importar el sistema.
Programación con MATLAB 5.3
PRINCIPIOS DE PROGRAMACIÓN

PHP el Lenguaje Ejercicios Básicos.
1 TÉCNICAS DE PROGRAMACIÓN Lenguaje C Tercera Clase (Segunda de C)
27 de marzo de 2010 Presentan: Díaz Orea Elizabeth Leal Alvarado Angelina.
Se pueden incluir comentarios en cualquier parte de un programa pero deben delimitarse con llaves o con paréntesis y asterisco:
Declaraciones. 1 Nombres de identificadores Identificador: – Nombres usados para referirse a las variables, identificar funciones o etiquetas definidos.
Práctica Profesional PHP.
Manual PHP Básico Camilo Cartagena.
Lenguaje de programación c
PROGRAMACIÓN Grupo de Modelamiento de Sistemas
PARCIAL 2. LENGUAJE DE PROGRAMACIÓN UN LENGUAJE SE PUEDE DEFINIR COMO UN CONJUNTO DE PALABRAS Y FORMAS DE EXPRESIÓN POR MEDIO DE LAS CUALES SE COMUNICAN.
Algorítmica y Programación
Este material ha sido desarrollado para alumnos que cursan la asignatura de Programación Básica impartida en el primer semestre en la Facultad de Ingeniería.
Programación en Java Introducción a Java. Reseña histórica Surge en 1991 por Sun Microsystems Desarrollado para electrodomésticos Se buscaba un código.
P ROCESO DE E NSAMBLADO Cámara Vázquez Berenice Rubí.
Programación en Java Introducción a Java. Reseña histórica Surge en 1991 por Sun Microsystems Desarrollado para electrodomésticos Se buscaba un código.
Transcripción de la presentación:

© Manuel ColladoAWK-1 Herramientas Grep y AWK Grep: Globally search for Reg. Expr. and Print (UNIX - editor “ed” - g/re/ p) AWK: Aho, Weinberger y Kernighan

© Manuel ColladoAWK-2 Expresiones regulares n Expresiones simples x  carácter x, si es carácter normal.  cualquier carácter ^  principio del texto, si va al comienzo $  fin del texto, si va al final [ aeiou ]  un carácter del conjunto [ a - z ]  un carácter del rango [^ aeiou0-9 ]  complementa el conjunto \ x  carácter x, incluso especial

© Manuel ColladoAWK-3 Expresiones regulares n Expresiones compuestas x +  una o más repeticiones de x x*  cero o más repeticiones de x x ?  cero o una aparición de x una | otra  una u otra expresión ( x )  expresión x xy  expresión x seguida de y n Ejemplo: valor real al comienzo del texto ^[+\-0-9][0-9]*\.[0-9]*

© Manuel ColladoAWK-4 Herramienta Grep n Se invoca de la forma: > grep patrón ficheros... n Efecto: Lee los ficheros y envía a la salida cada línea que se ajuste al patrón n Ejemplo: > grep ^/[/\*] *.h *.cpp (obtiene todas las líneas de código que empiecen con un comentario // o /* )

© Manuel ColladoAWK-5 Lenguaje AWK n Esquema general del programa Colección de cláusulas  patrón { acción } Patrón omitido  se cumple siempre Acción omitida  { print }(imprimir línea) Patrón /expr.regular/  debe ajustarse a la línea Patrón expr. aritmét.  cumple si no nulo (0 o “”) n Ejecución de un programa AWK l Leer los ficheros de entrada línea por línea y aplicar a cada línea la colección de cláusulas, por su orden.

© Manuel ColladoAWK-6 Lenguaje AWK n Patrones especiales BEGIN  se cumple antes de leer la entrada END  se cumple al final de todo el proceso x, y  lo cumple un rango de líneas n Código de las acciones l Las acciones se escriben como en lenguaje C l No hay que declarar las variables (se crean al usarlas, con valores nulos) l Valores numéricos o de texto, indistintamente.

© Manuel ColladoAWK-7 Lenguaje AWK n Invocar la herramienta AWK awk "programa" ficheros... awk -f programa ficheros... awk... -v var=valor... l Programa en la misma orden o en fichero de texto n Ejemplo: awk "/^[0-9]/ {print $1}" *.txt l Imprime el primer campo de cada línea de un fichero de texto que empiece por un número

© Manuel ColladoAWK-8 Lenguaje AWK n Campos en las líneas de entrada: l $n  n-simo campo l $0  toda la línea l $0 = “ejemplo de línea de texto” $1 = “ejemplo”$2 = “de”$3 = “línea” $4 = “de”$5 = “texto” l La referencia a un campo puede ser calculada: k = 3$k = “línea”

© Manuel ColladoAWK-9 Lenguaje AWK n Algunas variables predefinidas: NF  número de campos NR  número de la línea (global) FNR  número de la línea (local al fichero) FILENAME  nombre del fichero actual Las variables anteriores toman valor automáticamente con cada línea FS  sep. de campos de entrada ( “ ” ) RS  sep. de líneas de entrada ( “\n” )

© Manuel ColladoAWK-10 Lenguaje AWK n Algunas sentencias de uso frecuente: var = expresión if ( condición ) acción [ else acción ] while ( condición ) acción for ( k=ini ; k<=fin ; k++ ) acción { sentencia ; sentencia... } print [ expresión, expresión... ] printf ( formato, expresión, expresión... )

© Manuel ColladoAWK-11 Lenguaje AWK n Tablas (vectores asociativos) l Colección de pares:(clave, información) Notación de array:tabla [ clave ] = información l Claves de cualquier tipo (números o texto) l Recorrido: for ( clave in tabla ) acción l Creación automática, al referirse a un elemento l Destrucción explícita: delete tabla [ clave ]delete tabla

© Manuel ColladoAWK-12 Ejemplo AWK: Concordancias n Frecuencia de aparición de cada palabra { for (k=1; k<=NF; k++) { cuenta[$k]++ } END { for (pal in cuenta) { print pal, cuenta[pal] }