SlideShare a Scribd company logo
1 of 37
Linux 1
Linux RHC030
Modulo 8. Herramientas de Procesos de String
Relator : Cristian Leiva
2© 2007 Linux. Todos los derechos reservados.
Unidad 8 – Herramientas de Procesos de
String
 Conteo de palabras y codificación de texto
 Búsqueda de Texto: grep
 Introducción a las expresiones regulares
 Ordenando todo: sort y uniq
 Extraer y reunir texto: cut y paste
 Rastreo de diferencias: diff
 Traducción de texto: tr
 Revisión ortográfica: aspell
 Formatear texto (fmt) y dividir archivos (split)
3© 2007 Linux. Todos los derechos reservados.
 Conceptos Claves
 Cuando se almacena texto, los equipos transforman los caracteres en
una representación numérica. Este proceso se conoce como
codificación del texto.
 A fin de cubrir las demandas de una variedad de idiomas, se han
desarrollado diversas técnicas de codificación. Estas técnicas están
representados por una variedad de conjuntos de caracteres.
 La técnica de codificación más prevalente y antigua se conoce como
el conjunto de caracteres ASCII, el cual sirve aún como el denominador
menos común entre otras técnicas.
 El comando wc cuenta el número de caracteres, palabras y líneas en
un archivo. Cuando se aplica a datos estructurados, el comando wc
puede convertirse en una herramienta versátil de conteo.
 El comando cat tiene opciones que permiten la representación de
caracteres de no impresión tal como el caracter NEWLINE.
 Los comandos head y tail tienen opciones que le permiten imprimir
sólo un cierto número de líneas o un cierto número de bytes de un
archivo, (un byte suele correlacionarse con un caracter).
Conteo de palabras y codificación de texto
4© 2007 Linux. Todos los derechos reservados.
Codificación
 Codificación de Datos
– Convertir la información en valores numéricos es llamada
codificación de los datos.
 Codificación de Texto
– Codificación ASCII simplemente toma las letras, números y
comunes caracteres de puntuacion Inglés (los que se
encuentran en un teclado), y los asigna a un número entero
entre 0 y 255.
 Unicode (UCS)
– Supera las limitaciones de ASCII e ISO 8859 basado en
tecnicas de codificación.
 Unicode Transformation Format (UTF-8)
–Balance entre la flexibilidad de Unicode, y la viabilidad de
ASCII, con: longitud variable de codificación.
7© 2007 Linux. Todos los derechos reservados.
Visualización de secuencias de control
 Los archivos de texto de Linux (y Unix) por lo general se
adhieren a la convención de que el último caracter del archivo
debe ser un avance de línea para la última línea de texto.
 El comando cat indica la presencia de la presencia de
tabulaciones, avances de línea y otras secuencias de control
[student@station student]$ cat -A /etc/hosts
# Do not remove the following line, or various programs$
# that require network functionality will fail.$
127.0.0.1^Ilocalhost.localdomain^Ilocalhost station.example.com $
127.0.0.1^Irha-server$
[student@station student]$ head –n2 /etc/hosts
# Do not remove the following line, or various programs
# that require network functionality will fail.
[student@station student]$
8© 2007 Linux. Todos los derechos reservados.
Comando Word Count (wc)
 El comando wc cuenta el numero de caracteres, palabras y
lineas.
 Tomará su entrada ya sea de archivos llamados en su línea
de comandos o desde su entrada estándar.
wc [-c] [-l] [-w] [filename…]
9© 2007 Linux. Todos los derechos reservados.
Búsqueda de Texto: grep
 Conceptos Claves
 grep es un comando que imprime en pantalla líneas coincidentes
con un patrón de una cadena de texto especificado.
 grep suele utilizarse como filtro para reducir salida a sólo lo
deseado.
 grep -r buscará de modo recursivo bajo un directorio
determinado.
 grep -v imprime líneas NO coincidentes con una cadena o patrón
de texto.
 Muchas de las opciones permiten a los usuarios especificar el
formato de salida de grep.
10© 2007 Linux. Todos los derechos reservados.
Búsqueda de contenido de archivo de texto
 grep: general regular expression parser
 Herrramienta útil para la búsqueda de palabras específicas
o secuencias de caracteres en el contenido de archivo de
texto.
 Hay en realidad tres nombres diferentes para la
herramienta grep
–fgrep
•Hace una búsqueda rápida de patrones simples. Utilice este
comando para localizar rápidamente patrones sin caracteres
comodines, útil para buscar una palabra común.
–grep
•Búsqueda de patrones con expresiones regulares comunes.
–egrep
•Búsqueda de patrones con expresiones regulares extendidas de
gran alcance.
11© 2007 Linux. Todos los derechos reservados.
grep
12© 2007 Linux. Todos los derechos reservados.
Muestra todas las ocurrencias de una cadena
de texto en un archivo
[student]$ cat file
This file has some words.
It also has even more words.
[student]$ grep even file
It also has even more words.
[student]$
[student]$ echo Every cat has one tail. > general
[student]$ echo No cat has nine tails. > specific
[student]$ echo Therefore, every cat has ten tails. > fallacy
[student]$ grep cat general specific fallacy
general:Every cat has one tail.
specific:No cat has nine tails.
fallacy:Therefore, every cat has ten tails.
[student]$
13© 2007 Linux. Todos los derechos reservados.
Obtención de números de línea
[student]$ fgrep -n dictionary
/usr/share/dict/words 12526:dictionary
[student]$ fgrep -nr dictionary /usr/share/dict
linux.words:12526:dictionary
words:12526:dictionary
14© 2007 Linux. Todos los derechos reservados.
Ignorar mayúsculas o minúsculas
[student]$ cat rhyme
The cat
sat on
the mat
at home.
[student]$ grep the rhyme
the mat
[student]$ grep -in the rhyme
1:The cat
3:the mat
17© 2007 Linux. Todos los derechos reservados.
Expresiones Regulares (cont.)
 Una expresión regular es una secuencia de:
–Caracteres literales
–Comodines
–Modificadores
–Anclas
 Caracteres literales
–Los caracteres literales coinciden únicamente con
ellos mismos. Las letras, dígitos y la mayoría de los
caracteres son ejemplos de caracteres literales
(vea a continuación las excepciones).
 Comodines
–Los caracteres comodines coinciden con cualquier
caracter. Dentro de una expresión, un punto (“.”)
coincide con cualquier caracter, ya sea un espacio,
una letra, un dígito, puntuación, cualquier cosa.
 Modificadores
–Un modificador altera el significado del caracter
patrón precedente inmediato. Por ejemplo, la
expresión “ab*c” coincide con cadenas de texto “ac”,
“abc”, “abbc”, “abbbc” y así sucesivamente porque el
asterisco (“*”) es un modificador que significa
“cualquier número de (incluyendo cero)”.
 Anclas
–Las anclas establecen el contexto para el patrón tal
como "el comienzo de una línea" o "el final de una
palabra". Por ejemplo, la expresión “cat” coincidiría
con cualquier ocurrencia de las tres letras mientras
que “^cat” sólo coincidirían con las líneas que
comienzan por “cat”.
20© 2007 Linux. Todos los derechos reservados.
Ordenando todo: sort y uniq
 Conceptos clave
 El comando sort clasifica datos en orden alfabético.
 sort -n ordena numéricamente.
 sort -u clasifica y suprime duplicados.
 sort -k y -t clasifica en un campo específico en datos en patrones.
21© 2007 Linux. Todos los derechos reservados.
El comando sort
 En su forma más simple, el comando sort clasificará
en orden alfabético líneas
[madonna@station madonna]$ cat /etc/sysconfig/mouse
FULLNAME="Generic - 2 Button Mouse (PS/2)"
MOUSETYPE="ps/2"
XEMU3="yes"
XMOUSETYPE="PS/2"
DEVICE=/dev/psaux
[madonna@station madonna]$ sort /etc/sysconfig/mouse
DEVICE=/dev/psaux
FULLNAME="Generic - 2 Button Mouse (PS/2)"
MOUSETYPE="ps/2"
XEMU3="yes"
XMOUSETYPE="PS/2"
22© 2007 Linux. Todos los derechos reservados.
Opciones para especificar el orden de
clasificación
23© 2007 Linux. Todos los derechos reservados.
Sort Order
[madonna@station madonna]$ ls -s /var/log/m* | sort
1236 /var/log/maillog.4
20 /var/log/maillog
216 /var/log/messages.3
3104 /var/log/maillog.1
4 /var/log/messages
[madonna@station madonna]$ ls -s /var/log/m* | sort -n
4 /var/log/messages
20 /var/log/maillog
216 /var/log/messages.3
1236 /var/log/maillog.4
3104 /var/log/maillog.1
24© 2007 Linux. Todos los derechos reservados.
Sort Keys
[madonna@station madonna]$ ls -l /var/log/m* | sort -n -k5
-rw------- 1 root root 651 Oct 5 05:40 /var/log/messages
-rw------- 1 root root 31187 Oct 5 06:05 /var/log/maillog
-rw------- 1 root root 216885 Sep 22 10:22 /var/log/messages.3
-rw------- 1 root root 387345 Oct 5 04:07 /var/log/messages.1
-rw------- 1 root root 567049 Sep 14 04:08 /var/log/messages.4
Opciones para especificar teclas de clasificación
[madonna@station madonna]$ head /etc/passwd | sort -t: -k6
bin:x:1:1:bin:/bin:/sbin/nologin
news:x:9:13:news:/etc/news:
root:x:0:0:root:/root:/bin/bash
sync:x:5:0:sync:/sbin:/bin/sync
halt:x:7:0:halt:/sbin:/sbin/halt
daemon:x:2:2:daemon:/sbin:/sbin/nologin
shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown
adm:x:3:4:adm:/var/adm:/sbin/nologin
lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
mail:x:8:12:mail:/var/spool/mail:/sbin/nologin
En resumen, hemos visto que el comando sort
puede utilizarse para clasificar datos estructurados,
mediante la opción -k para especificar el campo de
clasificación(quizás más de una vez) y la opción -t
para especificar el delimitador del campo.
25© 2007 Linux. Todos los derechos reservados.
El comando uniq
 El programa uniq se utiliza para identificar, contar o suprimir
registros duplicados en la información clasificada.
26© 2007 Linux. Todos los derechos reservados.
Conteo de instancias de datos
[madonna@station madonna]$ sort -n trial0 | uniq -u
4
16
[madonna@station madonna]$ sort -n trial1 | uniq -d
5
6
7
8
9
10
 Los switches de parametros -d y -u permiten que el comando uniq
identifique un dato unico o repetido (-c permite contar ocurrencias)
[madonna@station madonna]$ sort -n trial1 | uniq -c
1 4
4 5
6 6
10 7
10 8
13 9
13 10
9 11
13 12
4 13
8 14
4 15
1 16
2 17
2 18
[madonna@station madonna]$ head trial1
10
10
10
13
8
8
10
10
8
6
27© 2007 Linux. Todos los derechos reservados.
Extraer y reunir texto: cut y paste
 Conceptos clave
 El comando cut extrae textos de archivos de texto, basados
en columnas especificadas por bytes, caracteres o campos.
 El comando paste fusiona dos archivos de texto por línea.
28© 2007 Linux. Todos los derechos reservados.
Extracción del texto con cut
 El comando cut extrae columnas de texto desde un archivo
de texto
Opciones para el comando cut.
Especificaciones de intervalo
29© 2007 Linux. Todos los derechos reservados.
Extracción de texto por posición de
caracter con cut -c
[student]$ cat /proc/interrupts
CPU0
0: 4477340 XT-PIC timer
1: 25250 XT-PIC keyboard
2: 0 XT-PIC cascade
3: 7344 XT-PIC ehci-hcd
[student]$ grep '[[:digit:]]:' /proc/interrupts | cut -c1-15
0: 4512997
1: 27954
2: 0
3: 7344
[student]$ grep '[[:digit:]]:' /proc/interrupts | cut -c1-5,34-
0: timer
1: keyboard
2: cascade
3: ehci-hcd
30© 2007 Linux. Todos los derechos reservados.
Extracción de campos de texto con cut -f
 El comando cut también sirve para extraer texto que no está
estructurado por la posición de caracteres, sino por un
caracter delimitador tal como un TABULADOR o “:”.
[student@rosemont hwdata]$ head -15 pcitable
# This file is automatically generated from isys/pci.
0x0675 0x1700 "unknown" "Dynalink|IS64PH ISDN Adapter"
0x0675 0x1702 "hisax" "Dynalink|IS64PH ISDN Adapter"
0x09c1 0x0704 "unknown" "Arris|CM 200E Cable Modem“
[student@rosemont hwdata]$ cut -s -f3,4 pcitable | head
"unknown" "Dynalink|IS64PH ISDN Adapter"
"hisax" "Dynalink|IS64PH ISDN Adapter"
"unknown" "Arris|CM 200E Cable Modem"
31© 2007 Linux. Todos los derechos reservados.
Comando paste
 El comando paste sirve para combinar archivos múltiples en
una sola salida.
[student@station student]$ cat file-1
File-1 Line 1
File-1 Line 2
File-1 Line 3
[student@station student]$ cat file-2
File-2 Line 1
File-2 Line 2
File-2 Line 3
student@station student]$ paste file-1 file-2
File-1 Line 1 File-2 Line 1
File-1 Line 2 File-2 Line 2
File-1 Line 3 File-2 Line 3
32© 2007 Linux. Todos los derechos reservados.
Rastreo de diferencias: diff
 Conceptos clave
 El comando diff resume las diferencias entre dos
archivos.
 El comando diff es compatible con una gran variedad
de formatos de salida que pueden escogerse mediante
varias opciones.
Al comando diff se le puede pedir que ignore ciertos
tipos de diferencias tales como el uso de espacios en
blanco o de mayúsculas.
 El comando diff -r resume de modo recursivo las
diferencias entre los dos directorios.
 Al comparar directorios, se le puede pedir al comando
diff que ignore los archivos cuyos nombres de archivo
coincidan con patrones especificados.
33© 2007 Linux. Todos los derechos reservados.
Comando diff
 El comando diff está diseñado para comparar dos archivos
similares, pero no idénticos y que generen salida que describa
exactamente la diferencia.
[blondie]$ diff README.pam_ftp.orig README.pam_ftp
11,12c11,12
< could login only with email adress
< "ignore" allow invalid email adresses
---
> could login only with email address
> "ignore" allow invalid email addresses
18a19
> Spelling corrections applied by blondie, 22 Sep 2003
34© 2007 Linux. Todos los derechos reservados.
Opciones para especificar el formato de
salida diff
35© 2007 Linux. Todos los derechos reservados.
Traducción de texto: tr
 Conceptos clave
 El comando tr traduce lectura de datos desde la entrada estándar.
 En su forma más básica, el comando tr realiza sustituciones byte
por byte.
 Al utilizar la opción -d, el comando tr borrará caracteres
especificados desde un flujo.
 Al utilizar la opción -s se comprimirá una serie de caracteres
repetidos en un flujo a una sola instancia del caracter.
36© 2007 Linux. Todos los derechos reservados.
Comando tr
 El comando tr es una utilidad muy versátil que realiza
traducciones de caracter en flujos.
 Traducir puede suponer sustituir un caracter por otro,
borrar caracteres o "comprimirlos" (contrayendo
secuencias repetidas de un caracter en uno).
 El comando tr no espera nombres de archivo como
argumentos.
 el comando tr opera exclusivamente en el flujo de
entrada estándar, reservando los argumentos de línea de
comandos para especificar conversiones.
37© 2007 Linux. Todos los derechos reservados.
Uso de tr para traducir caracteres
[madonna@rosemont madonna]$ echo "abcdefghi" | tr fed xyz
abczyxghi
 tr command expects to be called with two arguments, each of
which specify a range of characters
[madonna@rosemont madonna]$ cat /etc/hosts
# Do not remove the following line, or various programs
# that require network functionality will fail.
127.0.0.1 localhost.localdomain localhost rha-server
[madonna@rosemont madonna]$ tr a-z A-Z < /etc/hosts
# DO NOT REMOVE THE FOLLOWING LINE, OR VARIOUS PROGRAMS
# THAT REQUIRE NETWORK FUNCTIONALITY WILL FAIL.
127.0.0.1 LOCALHOST.LOCALDOMAIN LOCALHOST RHA-SERVER
38© 2007 Linux. Todos los derechos reservados.
Revisión ortográfica: aspell
 Conceptos clave
– El comando aspell -c realiza revisiones ortográficas
interactivas en los archivos.
– El comando aspell -l realiza una revisión ortográfica en
el flujo de entrada estándar.
– El comando aspell dump puede utilizarse para ver el
maestro del sistema o el directorio personal de un
usuario.
– Los comandos aspell create personal y aspell merge
personal pueden utilizarse para crear o añadirse al
directorio personal del usuario de una lista de palabras.
39© 2007 Linux. Todos los derechos reservados.
Using aspell
[prince@station prince] aspell -c toelvis
 aspell es el utilitario primario para revisar la ortografía de los
archivos de texto.
Hey Elvis!
I heard you were about to take the lab test for the string
procesing workbook in Red Hat Academy. IIRC, its prety
straightforward, if you've been keeping up with the exercises.
LOL, Prince
=========================================
1) processing 6) preceding
2) precessing 7) professing
3) precising 8) promising
4) proceeding 9) proposing
5) prosing
i) Ignore I) Ignore all
r) Replace R) Replace all
a) Add x) Exit
=========================================
?
40© 2007 Linux. Todos los derechos reservados.
Formatear texto (fmt) y dividir
archivos (split)
 Conceptos clave
 El comando fmt puede reformatear texto a diferentes
anchuras.
 Al usar la opción -p, el comando fmt sólo reformateará texto
comenzado por el prefijo especificado, preservando el prefijo.
 El comando split puede utilizarse para dividir un archivo
sencillo en múltiples archivos basados en un número de líneas
o en un número de bytes.
41© 2007 Linux. Todos los derechos reservados.
Comando fmt
 Al igual que la mayoría de los comandos de procesador
de texto encontrados en este cuaderno, el comando
fmt interpreta argumentos como nombres de archivos
en los cuales operar, u operar en entrada estándar si
ninguno es provisto. Su salida se escribe a la salida
estándar.
[elvis@station elvis]$ fmt -w60 side_effect.gvim
One side effect of the variety of text editors in Linux,
and in particular the coexistence of text editors and
word processors, is the inconsistencies with which word
wrapping is handled.
[elvis@station elvis]$ fmt -40 side_effect.gvim
One side effect of the variety of text
editors in Linux, and in particular the
coexistence of text editors and word
processors, is the inconsistencies with
which word wrapping is handled.
42© 2007 Linux. Todos los derechos reservados.
Comando split
 Es usado cuando se desea dividir un archivo en
archivos más pequeños, cada uno con un número
especificado de líneas o bytes.
elvis@station elvis]$ split -200 pointless.txt sub_pointless_
[elvis@station elvis]$ wc sub_pointless_a*
200 1800 8892 sub_pointless_aa
200 1800 9000 sub_pointless_ab
200 1800 9000 sub_pointless_ac
200 1800 9000 sub_pointless_ad
200 1800 9001 sub_pointless_ae
66 594 3036 sub_pointless_af
1066 9594 47929 total
43© 2007 Linux. Todos los derechos reservados.

More Related Content

What's hot

Conceptos Básicos acerca de Procesadores de Lenguajes
Conceptos Básicos acerca de Procesadores de LenguajesConceptos Básicos acerca de Procesadores de Lenguajes
Conceptos Básicos acerca de Procesadores de LenguajesGrace Laguna
 
Tema 10 www.fresymetal.com
Tema 10 www.fresymetal.comTema 10 www.fresymetal.com
Tema 10 www.fresymetal.comFresyMetal
 
Manejo de archivosss
Manejo de archivosssManejo de archivosss
Manejo de archivossstaniarodri
 
Curso de LaTeX - Clase I Software y Texto
Curso de LaTeX - Clase I Software y TextoCurso de LaTeX - Clase I Software y Texto
Curso de LaTeX - Clase I Software y TextoAndy Juan Sarango Veliz
 
Arranque de Sistema Operativo con Assembler
Arranque de Sistema Operativo con AssemblerArranque de Sistema Operativo con Assembler
Arranque de Sistema Operativo con AssemblerPedro Contreras Flores
 
Bases de Datos - Parte 8/10 Memoria secundaria
Bases de Datos - Parte 8/10 Memoria secundariaBases de Datos - Parte 8/10 Memoria secundaria
Bases de Datos - Parte 8/10 Memoria secundariaCarlos Castillo (ChaTo)
 
Objetivo 01 Archivos de Texto
Objetivo 01 Archivos de TextoObjetivo 01 Archivos de Texto
Objetivo 01 Archivos de Textonakaryortegaleon
 
PUNTEROS (APUNTADORES) EN C++
PUNTEROS (APUNTADORES) EN C++PUNTEROS (APUNTADORES) EN C++
PUNTEROS (APUNTADORES) EN C++die_dex
 
Compiladores - Flex y Bison
Compiladores - Flex y BisonCompiladores - Flex y Bison
Compiladores - Flex y BisonSteven Tabango
 
57 Php. Funciones De Compresion
57 Php. Funciones De Compresion57 Php. Funciones De Compresion
57 Php. Funciones De CompresionJosé M. Padilla
 

What's hot (16)

Manejo archivos
Manejo archivosManejo archivos
Manejo archivos
 
Conceptos Básicos acerca de Procesadores de Lenguajes
Conceptos Básicos acerca de Procesadores de LenguajesConceptos Básicos acerca de Procesadores de Lenguajes
Conceptos Básicos acerca de Procesadores de Lenguajes
 
Programacion logica
Programacion logicaProgramacion logica
Programacion logica
 
Tema 10 www.fresymetal.com
Tema 10 www.fresymetal.comTema 10 www.fresymetal.com
Tema 10 www.fresymetal.com
 
Manejo de archivosss
Manejo de archivosssManejo de archivosss
Manejo de archivosss
 
Curso de LaTeX - Clase I Software y Texto
Curso de LaTeX - Clase I Software y TextoCurso de LaTeX - Clase I Software y Texto
Curso de LaTeX - Clase I Software y Texto
 
Arranque de Sistema Operativo con Assembler
Arranque de Sistema Operativo con AssemblerArranque de Sistema Operativo con Assembler
Arranque de Sistema Operativo con Assembler
 
Bases de Datos - Parte 8/10 Memoria secundaria
Bases de Datos - Parte 8/10 Memoria secundariaBases de Datos - Parte 8/10 Memoria secundaria
Bases de Datos - Parte 8/10 Memoria secundaria
 
Curso de LaTeX - Clase V BibTEX
Curso de LaTeX - Clase V BibTEXCurso de LaTeX - Clase V BibTEX
Curso de LaTeX - Clase V BibTEX
 
Objetivo 01 Archivos de Texto
Objetivo 01 Archivos de TextoObjetivo 01 Archivos de Texto
Objetivo 01 Archivos de Texto
 
PUNTEROS (APUNTADORES) EN C++
PUNTEROS (APUNTADORES) EN C++PUNTEROS (APUNTADORES) EN C++
PUNTEROS (APUNTADORES) EN C++
 
Compiladores - Flex y Bison
Compiladores - Flex y BisonCompiladores - Flex y Bison
Compiladores - Flex y Bison
 
EXPO PERL UTT
EXPO PERL UTTEXPO PERL UTT
EXPO PERL UTT
 
57 Php. Funciones De Compresion
57 Php. Funciones De Compresion57 Php. Funciones De Compresion
57 Php. Funciones De Compresion
 
Flex y Bison
Flex y BisonFlex y Bison
Flex y Bison
 
Manual de-referencia-de-lua-5-1 new
Manual de-referencia-de-lua-5-1  newManual de-referencia-de-lua-5-1  new
Manual de-referencia-de-lua-5-1 new
 

Viewers also liked

Tecnología para el prototipado rápido. impresoras 3 d
Tecnología para el prototipado rápido. impresoras 3 dTecnología para el prototipado rápido. impresoras 3 d
Tecnología para el prototipado rápido. impresoras 3 dFelipe Moore
 
La mitologia
La mitologiaLa mitologia
La mitologiatztztztz
 
Semana 13 y 14 aplicaciones de redes
Semana 13 y 14 aplicaciones de redesSemana 13 y 14 aplicaciones de redes
Semana 13 y 14 aplicaciones de redesvictdiazm
 
Private tours in Dominican Republic
Private tours in Dominican RepublicPrivate tours in Dominican Republic
Private tours in Dominican RepublicCaribecoturismo
 
Encuesta de Opinión Pública a Nivel Nacional OCTUBRE 2013
Encuesta de Opinión Pública a Nivel Nacional OCTUBRE 2013Encuesta de Opinión Pública a Nivel Nacional OCTUBRE 2013
Encuesta de Opinión Pública a Nivel Nacional OCTUBRE 2013Colectivo Toleranciaydemocracia
 
PRESENTACIÓN MAXTHON I1
PRESENTACIÓN MAXTHON I1PRESENTACIÓN MAXTHON I1
PRESENTACIÓN MAXTHON I1Veliz Luq
 
Introduccion al lenguaje c
Introduccion al lenguaje cIntroduccion al lenguaje c
Introduccion al lenguaje cvictdiazm
 
Bi 2013 ut 01 (1)
Bi 2013 ut 01 (1)Bi 2013 ut 01 (1)
Bi 2013 ut 01 (1)victdiazm
 
Propiedades de la inmobiliaria
Propiedades de la inmobiliariaPropiedades de la inmobiliaria
Propiedades de la inmobiliariaEva Cabreja
 
Portafolio de presentación. Movimiento Educativo Abierto.
Portafolio de presentación. Movimiento Educativo Abierto.Portafolio de presentación. Movimiento Educativo Abierto.
Portafolio de presentación. Movimiento Educativo Abierto.mariu2013
 
Diapositicas
DiapositicasDiapositicas
Diapositicas1996mary
 
Plan para tener ancianos en las iglesias locales by eliud gamez sr
Plan para tener ancianos en las iglesias locales by eliud gamez srPlan para tener ancianos en las iglesias locales by eliud gamez sr
Plan para tener ancianos en las iglesias locales by eliud gamez srEliud Gamez Gomez
 

Viewers also liked (20)

Tecnología para el prototipado rápido. impresoras 3 d
Tecnología para el prototipado rápido. impresoras 3 dTecnología para el prototipado rápido. impresoras 3 d
Tecnología para el prototipado rápido. impresoras 3 d
 
La mitologia
La mitologiaLa mitologia
La mitologia
 
Empanada Lunch - May 2013
Empanada Lunch - May 2013Empanada Lunch - May 2013
Empanada Lunch - May 2013
 
Arturo Novo Torres
Arturo Novo TorresArturo Novo Torres
Arturo Novo Torres
 
Wikis
WikisWikis
Wikis
 
generacion de computadores
generacion de computadoresgeneracion de computadores
generacion de computadores
 
La Web
La WebLa Web
La Web
 
Semana 13 y 14 aplicaciones de redes
Semana 13 y 14 aplicaciones de redesSemana 13 y 14 aplicaciones de redes
Semana 13 y 14 aplicaciones de redes
 
Private tours in Dominican Republic
Private tours in Dominican RepublicPrivate tours in Dominican Republic
Private tours in Dominican Republic
 
¿Comó deciden su votos los peruanos?
¿Comó deciden su votos los peruanos?¿Comó deciden su votos los peruanos?
¿Comó deciden su votos los peruanos?
 
Encuesta de Opinión Pública a Nivel Nacional OCTUBRE 2013
Encuesta de Opinión Pública a Nivel Nacional OCTUBRE 2013Encuesta de Opinión Pública a Nivel Nacional OCTUBRE 2013
Encuesta de Opinión Pública a Nivel Nacional OCTUBRE 2013
 
PRESENTACIÓN MAXTHON I1
PRESENTACIÓN MAXTHON I1PRESENTACIÓN MAXTHON I1
PRESENTACIÓN MAXTHON I1
 
Introduccion al lenguaje c
Introduccion al lenguaje cIntroduccion al lenguaje c
Introduccion al lenguaje c
 
Bi 2013 ut 01 (1)
Bi 2013 ut 01 (1)Bi 2013 ut 01 (1)
Bi 2013 ut 01 (1)
 
Propiedades de la inmobiliaria
Propiedades de la inmobiliariaPropiedades de la inmobiliaria
Propiedades de la inmobiliaria
 
Portafolio de presentación. Movimiento Educativo Abierto.
Portafolio de presentación. Movimiento Educativo Abierto.Portafolio de presentación. Movimiento Educativo Abierto.
Portafolio de presentación. Movimiento Educativo Abierto.
 
Alan garcia logra zafarse del caso fronton
Alan garcia logra zafarse del caso frontonAlan garcia logra zafarse del caso fronton
Alan garcia logra zafarse del caso fronton
 
Diapositicas
DiapositicasDiapositicas
Diapositicas
 
Empanada Lunch - March 2013
Empanada Lunch - March 2013Empanada Lunch - March 2013
Empanada Lunch - March 2013
 
Plan para tener ancianos en las iglesias locales by eliud gamez sr
Plan para tener ancianos en las iglesias locales by eliud gamez srPlan para tener ancianos en las iglesias locales by eliud gamez sr
Plan para tener ancianos en las iglesias locales by eliud gamez sr
 

Similar to Semana 8 herramientas de procesos de string

8 herramientas de procesos de string
8  herramientas de procesos de string8  herramientas de procesos de string
8 herramientas de procesos de stringJuan Camilo
 
Quasi - Comandos básicos para UNIX
Quasi - Comandos básicos para UNIXQuasi - Comandos básicos para UNIX
Quasi - Comandos básicos para UNIXdegarden
 
Tuberías (PIPES). EN GNU-LINUX-CENTOS ::: http://leymebamba.com
Tuberías (PIPES).  EN GNU-LINUX-CENTOS  ::: http://leymebamba.comTuberías (PIPES).  EN GNU-LINUX-CENTOS  ::: http://leymebamba.com
Tuberías (PIPES). EN GNU-LINUX-CENTOS ::: http://leymebamba.com{|::::::. ELDAVAN .:::::::|}
 
Taller de Compiladores flx y bsn
Taller de Compiladores flx y bsnTaller de Compiladores flx y bsn
Taller de Compiladores flx y bsnDanielRosero23
 
Introduction to linux for bioinformatics
Introduction to linux for bioinformaticsIntroduction to linux for bioinformatics
Introduction to linux for bioinformaticsAlberto Labarga
 
Linux ud3 - redireccionamiento y tuberias
Linux   ud3 - redireccionamiento y tuberiasLinux   ud3 - redireccionamiento y tuberias
Linux ud3 - redireccionamiento y tuberiasJavier Muñoz
 
Uso de las clases iostream
Uso de las clases iostreamUso de las clases iostream
Uso de las clases iostreamTensor
 
Scala en proyectos de vinculación Ancap-UR - 2013-03
Scala en proyectos de vinculación Ancap-UR - 2013-03Scala en proyectos de vinculación Ancap-UR - 2013-03
Scala en proyectos de vinculación Ancap-UR - 2013-03Germán Ferrari
 
Marco teórico práctica11
Marco teórico práctica11Marco teórico práctica11
Marco teórico práctica11Lucia9758
 

Similar to Semana 8 herramientas de procesos de string (20)

8 herramientas de procesos de string
8  herramientas de procesos de string8  herramientas de procesos de string
8 herramientas de procesos de string
 
Comandos linux
Comandos linuxComandos linux
Comandos linux
 
Quasi - Comandos básicos para UNIX
Quasi - Comandos básicos para UNIXQuasi - Comandos básicos para UNIX
Quasi - Comandos básicos para UNIX
 
Tuberías (PIPES). EN GNU-LINUX-CENTOS ::: http://leymebamba.com
Tuberías (PIPES).  EN GNU-LINUX-CENTOS  ::: http://leymebamba.comTuberías (PIPES).  EN GNU-LINUX-CENTOS  ::: http://leymebamba.com
Tuberías (PIPES). EN GNU-LINUX-CENTOS ::: http://leymebamba.com
 
Comandoslinux
ComandoslinuxComandoslinux
Comandoslinux
 
Comandos linux
Comandos linuxComandos linux
Comandos linux
 
Curso prog sist
Curso prog sistCurso prog sist
Curso prog sist
 
Curso Bash 3
Curso Bash 3Curso Bash 3
Curso Bash 3
 
Taller de Compiladores flx y bsn
Taller de Compiladores flx y bsnTaller de Compiladores flx y bsn
Taller de Compiladores flx y bsn
 
Introduction to linux for bioinformatics
Introduction to linux for bioinformaticsIntroduction to linux for bioinformatics
Introduction to linux for bioinformatics
 
Taller de flex y bison
Taller de flex y bisonTaller de flex y bison
Taller de flex y bison
 
Linux ud3 - redireccionamiento y tuberias
Linux   ud3 - redireccionamiento y tuberiasLinux   ud3 - redireccionamiento y tuberias
Linux ud3 - redireccionamiento y tuberias
 
Comandos unix y linux
Comandos unix y linuxComandos unix y linux
Comandos unix y linux
 
Tarea 3
Tarea 3Tarea 3
Tarea 3
 
04 j flex
04 j flex04 j flex
04 j flex
 
Curso prog sist
Curso prog sistCurso prog sist
Curso prog sist
 
Uso de las clases iostream
Uso de las clases iostreamUso de las clases iostream
Uso de las clases iostream
 
Compilador2
Compilador2Compilador2
Compilador2
 
Scala en proyectos de vinculación Ancap-UR - 2013-03
Scala en proyectos de vinculación Ancap-UR - 2013-03Scala en proyectos de vinculación Ancap-UR - 2013-03
Scala en proyectos de vinculación Ancap-UR - 2013-03
 
Marco teórico práctica11
Marco teórico práctica11Marco teórico práctica11
Marco teórico práctica11
 

More from victdiazm

Semana 2 y_3_-_file_ownerships_and_permissions
Semana 2 y_3_-_file_ownerships_and_permissionsSemana 2 y_3_-_file_ownerships_and_permissions
Semana 2 y_3_-_file_ownerships_and_permissionsvictdiazm
 
Semana 9 standard io and pipes guia de ejercicios resuelta
Semana 9   standard io and pipes  guia de ejercicios resueltaSemana 9   standard io and pipes  guia de ejercicios resuelta
Semana 9 standard io and pipes guia de ejercicios resueltavictdiazm
 
Semana 7 y 8 the linux filesystem guia de ejercicios resuelta
Semana 7 y 8   the linux filesystem guia de ejercicios resueltaSemana 7 y 8   the linux filesystem guia de ejercicios resuelta
Semana 7 y 8 the linux filesystem guia de ejercicios resueltavictdiazm
 
Semana 4 y 5 la shell bash guia de ejercicios resuelta
Semana 4 y 5  la shell bash guia de ejercicios resueltaSemana 4 y 5  la shell bash guia de ejercicios resuelta
Semana 4 y 5 la shell bash guia de ejercicios resueltavictdiazm
 
Semana 2 y 3 file ownerships and permissions guia de ejercicios resuelta
Semana 2 y 3   file ownerships and permissions guia de ejercicios resueltaSemana 2 y 3   file ownerships and permissions guia de ejercicios resuelta
Semana 2 y 3 file ownerships and permissions guia de ejercicios resueltavictdiazm
 
Semana 1 quick tours guia de ejercicios resuelta
Semana 1   quick tours guia de ejercicios resueltaSemana 1   quick tours guia de ejercicios resuelta
Semana 1 quick tours guia de ejercicios resueltavictdiazm
 
Semana 10 -_managing_processes_guia_de_ejercicios_resuelta
Semana 10 -_managing_processes_guia_de_ejercicios_resueltaSemana 10 -_managing_processes_guia_de_ejercicios_resuelta
Semana 10 -_managing_processes_guia_de_ejercicios_resueltavictdiazm
 
Semana 4 y_5_-_la_shell_bash
Semana 4 y_5_-_la_shell_bashSemana 4 y_5_-_la_shell_bash
Semana 4 y_5_-_la_shell_bashvictdiazm
 
Semana 2 y_3_-_file_ownerships_and_permissions
Semana 2 y_3_-_file_ownerships_and_permissionsSemana 2 y_3_-_file_ownerships_and_permissions
Semana 2 y_3_-_file_ownerships_and_permissionsvictdiazm
 
Semana 1 -_quick_tours_guia_de_ejercicios_resuelta
Semana 1 -_quick_tours_guia_de_ejercicios_resueltaSemana 1 -_quick_tours_guia_de_ejercicios_resuelta
Semana 1 -_quick_tours_guia_de_ejercicios_resueltavictdiazm
 
Semana 1 -_quick_tours
Semana 1 -_quick_toursSemana 1 -_quick_tours
Semana 1 -_quick_toursvictdiazm
 
Semana 16 usuarios y grupos
Semana 16 usuarios y gruposSemana 16 usuarios y grupos
Semana 16 usuarios y gruposvictdiazm
 
Semana 12 filesystem basico
Semana 12  filesystem basicoSemana 12  filesystem basico
Semana 12 filesystem basicovictdiazm
 
Semana 10 administracion de procesos
Semana 10 administracion de procesosSemana 10 administracion de procesos
Semana 10 administracion de procesosvictdiazm
 
Semana 9 entradas salidas estandar y pipes
Semana 9 entradas salidas estandar y pipesSemana 9 entradas salidas estandar y pipes
Semana 9 entradas salidas estandar y pipesvictdiazm
 
Semana 7 y 8 sistemas de archivos linux
Semana 7 y 8 sistemas de archivos linuxSemana 7 y 8 sistemas de archivos linux
Semana 7 y 8 sistemas de archivos linuxvictdiazm
 
Control1 victoria diaz
Control1   victoria diazControl1   victoria diaz
Control1 victoria diazvictdiazm
 
Comandos basicos linux
Comandos basicos linuxComandos basicos linux
Comandos basicos linuxvictdiazm
 

More from victdiazm (20)

Semana 2 y_3_-_file_ownerships_and_permissions
Semana 2 y_3_-_file_ownerships_and_permissionsSemana 2 y_3_-_file_ownerships_and_permissions
Semana 2 y_3_-_file_ownerships_and_permissions
 
Semana 9 standard io and pipes guia de ejercicios resuelta
Semana 9   standard io and pipes  guia de ejercicios resueltaSemana 9   standard io and pipes  guia de ejercicios resuelta
Semana 9 standard io and pipes guia de ejercicios resuelta
 
Semana 7 y 8 the linux filesystem guia de ejercicios resuelta
Semana 7 y 8   the linux filesystem guia de ejercicios resueltaSemana 7 y 8   the linux filesystem guia de ejercicios resuelta
Semana 7 y 8 the linux filesystem guia de ejercicios resuelta
 
Semana 4 y 5 la shell bash guia de ejercicios resuelta
Semana 4 y 5  la shell bash guia de ejercicios resueltaSemana 4 y 5  la shell bash guia de ejercicios resuelta
Semana 4 y 5 la shell bash guia de ejercicios resuelta
 
Semana 2 y 3 file ownerships and permissions guia de ejercicios resuelta
Semana 2 y 3   file ownerships and permissions guia de ejercicios resueltaSemana 2 y 3   file ownerships and permissions guia de ejercicios resuelta
Semana 2 y 3 file ownerships and permissions guia de ejercicios resuelta
 
Semana 1 quick tours guia de ejercicios resuelta
Semana 1   quick tours guia de ejercicios resueltaSemana 1   quick tours guia de ejercicios resuelta
Semana 1 quick tours guia de ejercicios resuelta
 
Semana 10 -_managing_processes_guia_de_ejercicios_resuelta
Semana 10 -_managing_processes_guia_de_ejercicios_resueltaSemana 10 -_managing_processes_guia_de_ejercicios_resuelta
Semana 10 -_managing_processes_guia_de_ejercicios_resuelta
 
Semana 4 y_5_-_la_shell_bash
Semana 4 y_5_-_la_shell_bashSemana 4 y_5_-_la_shell_bash
Semana 4 y_5_-_la_shell_bash
 
Semana 2 y_3_-_file_ownerships_and_permissions
Semana 2 y_3_-_file_ownerships_and_permissionsSemana 2 y_3_-_file_ownerships_and_permissions
Semana 2 y_3_-_file_ownerships_and_permissions
 
Semana 1 -_quick_tours_guia_de_ejercicios_resuelta
Semana 1 -_quick_tours_guia_de_ejercicios_resueltaSemana 1 -_quick_tours_guia_de_ejercicios_resuelta
Semana 1 -_quick_tours_guia_de_ejercicios_resuelta
 
Semana 1 -_quick_tours
Semana 1 -_quick_toursSemana 1 -_quick_tours
Semana 1 -_quick_tours
 
Semana 16 usuarios y grupos
Semana 16 usuarios y gruposSemana 16 usuarios y grupos
Semana 16 usuarios y grupos
 
Semana 12 filesystem basico
Semana 12  filesystem basicoSemana 12  filesystem basico
Semana 12 filesystem basico
 
Semana 10 administracion de procesos
Semana 10 administracion de procesosSemana 10 administracion de procesos
Semana 10 administracion de procesos
 
Semana 9 entradas salidas estandar y pipes
Semana 9 entradas salidas estandar y pipesSemana 9 entradas salidas estandar y pipes
Semana 9 entradas salidas estandar y pipes
 
Semana 7 y 8 sistemas de archivos linux
Semana 7 y 8 sistemas de archivos linuxSemana 7 y 8 sistemas de archivos linux
Semana 7 y 8 sistemas de archivos linux
 
Script
ScriptScript
Script
 
Control1 victoria diaz
Control1   victoria diazControl1   victoria diaz
Control1 victoria diaz
 
Compresor
CompresorCompresor
Compresor
 
Comandos basicos linux
Comandos basicos linuxComandos basicos linux
Comandos basicos linux
 

Semana 8 herramientas de procesos de string

  • 1. Linux 1 Linux RHC030 Modulo 8. Herramientas de Procesos de String Relator : Cristian Leiva
  • 2. 2© 2007 Linux. Todos los derechos reservados. Unidad 8 – Herramientas de Procesos de String  Conteo de palabras y codificación de texto  Búsqueda de Texto: grep  Introducción a las expresiones regulares  Ordenando todo: sort y uniq  Extraer y reunir texto: cut y paste  Rastreo de diferencias: diff  Traducción de texto: tr  Revisión ortográfica: aspell  Formatear texto (fmt) y dividir archivos (split)
  • 3. 3© 2007 Linux. Todos los derechos reservados.  Conceptos Claves  Cuando se almacena texto, los equipos transforman los caracteres en una representación numérica. Este proceso se conoce como codificación del texto.  A fin de cubrir las demandas de una variedad de idiomas, se han desarrollado diversas técnicas de codificación. Estas técnicas están representados por una variedad de conjuntos de caracteres.  La técnica de codificación más prevalente y antigua se conoce como el conjunto de caracteres ASCII, el cual sirve aún como el denominador menos común entre otras técnicas.  El comando wc cuenta el número de caracteres, palabras y líneas en un archivo. Cuando se aplica a datos estructurados, el comando wc puede convertirse en una herramienta versátil de conteo.  El comando cat tiene opciones que permiten la representación de caracteres de no impresión tal como el caracter NEWLINE.  Los comandos head y tail tienen opciones que le permiten imprimir sólo un cierto número de líneas o un cierto número de bytes de un archivo, (un byte suele correlacionarse con un caracter). Conteo de palabras y codificación de texto
  • 4. 4© 2007 Linux. Todos los derechos reservados. Codificación  Codificación de Datos – Convertir la información en valores numéricos es llamada codificación de los datos.  Codificación de Texto – Codificación ASCII simplemente toma las letras, números y comunes caracteres de puntuacion Inglés (los que se encuentran en un teclado), y los asigna a un número entero entre 0 y 255.  Unicode (UCS) – Supera las limitaciones de ASCII e ISO 8859 basado en tecnicas de codificación.  Unicode Transformation Format (UTF-8) –Balance entre la flexibilidad de Unicode, y la viabilidad de ASCII, con: longitud variable de codificación.
  • 5. 7© 2007 Linux. Todos los derechos reservados. Visualización de secuencias de control  Los archivos de texto de Linux (y Unix) por lo general se adhieren a la convención de que el último caracter del archivo debe ser un avance de línea para la última línea de texto.  El comando cat indica la presencia de la presencia de tabulaciones, avances de línea y otras secuencias de control [student@station student]$ cat -A /etc/hosts # Do not remove the following line, or various programs$ # that require network functionality will fail.$ 127.0.0.1^Ilocalhost.localdomain^Ilocalhost station.example.com $ 127.0.0.1^Irha-server$ [student@station student]$ head –n2 /etc/hosts # Do not remove the following line, or various programs # that require network functionality will fail. [student@station student]$
  • 6. 8© 2007 Linux. Todos los derechos reservados. Comando Word Count (wc)  El comando wc cuenta el numero de caracteres, palabras y lineas.  Tomará su entrada ya sea de archivos llamados en su línea de comandos o desde su entrada estándar. wc [-c] [-l] [-w] [filename…]
  • 7. 9© 2007 Linux. Todos los derechos reservados. Búsqueda de Texto: grep  Conceptos Claves  grep es un comando que imprime en pantalla líneas coincidentes con un patrón de una cadena de texto especificado.  grep suele utilizarse como filtro para reducir salida a sólo lo deseado.  grep -r buscará de modo recursivo bajo un directorio determinado.  grep -v imprime líneas NO coincidentes con una cadena o patrón de texto.  Muchas de las opciones permiten a los usuarios especificar el formato de salida de grep.
  • 8. 10© 2007 Linux. Todos los derechos reservados. Búsqueda de contenido de archivo de texto  grep: general regular expression parser  Herrramienta útil para la búsqueda de palabras específicas o secuencias de caracteres en el contenido de archivo de texto.  Hay en realidad tres nombres diferentes para la herramienta grep –fgrep •Hace una búsqueda rápida de patrones simples. Utilice este comando para localizar rápidamente patrones sin caracteres comodines, útil para buscar una palabra común. –grep •Búsqueda de patrones con expresiones regulares comunes. –egrep •Búsqueda de patrones con expresiones regulares extendidas de gran alcance.
  • 9. 11© 2007 Linux. Todos los derechos reservados. grep
  • 10. 12© 2007 Linux. Todos los derechos reservados. Muestra todas las ocurrencias de una cadena de texto en un archivo [student]$ cat file This file has some words. It also has even more words. [student]$ grep even file It also has even more words. [student]$ [student]$ echo Every cat has one tail. > general [student]$ echo No cat has nine tails. > specific [student]$ echo Therefore, every cat has ten tails. > fallacy [student]$ grep cat general specific fallacy general:Every cat has one tail. specific:No cat has nine tails. fallacy:Therefore, every cat has ten tails. [student]$
  • 11. 13© 2007 Linux. Todos los derechos reservados. Obtención de números de línea [student]$ fgrep -n dictionary /usr/share/dict/words 12526:dictionary [student]$ fgrep -nr dictionary /usr/share/dict linux.words:12526:dictionary words:12526:dictionary
  • 12. 14© 2007 Linux. Todos los derechos reservados. Ignorar mayúsculas o minúsculas [student]$ cat rhyme The cat sat on the mat at home. [student]$ grep the rhyme the mat [student]$ grep -in the rhyme 1:The cat 3:the mat
  • 13. 17© 2007 Linux. Todos los derechos reservados. Expresiones Regulares (cont.)  Una expresión regular es una secuencia de: –Caracteres literales –Comodines –Modificadores –Anclas  Caracteres literales –Los caracteres literales coinciden únicamente con ellos mismos. Las letras, dígitos y la mayoría de los caracteres son ejemplos de caracteres literales (vea a continuación las excepciones).  Comodines –Los caracteres comodines coinciden con cualquier caracter. Dentro de una expresión, un punto (“.”) coincide con cualquier caracter, ya sea un espacio, una letra, un dígito, puntuación, cualquier cosa.  Modificadores –Un modificador altera el significado del caracter patrón precedente inmediato. Por ejemplo, la expresión “ab*c” coincide con cadenas de texto “ac”, “abc”, “abbc”, “abbbc” y así sucesivamente porque el asterisco (“*”) es un modificador que significa “cualquier número de (incluyendo cero)”.  Anclas –Las anclas establecen el contexto para el patrón tal como "el comienzo de una línea" o "el final de una palabra". Por ejemplo, la expresión “cat” coincidiría con cualquier ocurrencia de las tres letras mientras que “^cat” sólo coincidirían con las líneas que comienzan por “cat”.
  • 14. 20© 2007 Linux. Todos los derechos reservados. Ordenando todo: sort y uniq  Conceptos clave  El comando sort clasifica datos en orden alfabético.  sort -n ordena numéricamente.  sort -u clasifica y suprime duplicados.  sort -k y -t clasifica en un campo específico en datos en patrones.
  • 15. 21© 2007 Linux. Todos los derechos reservados. El comando sort  En su forma más simple, el comando sort clasificará en orden alfabético líneas [madonna@station madonna]$ cat /etc/sysconfig/mouse FULLNAME="Generic - 2 Button Mouse (PS/2)" MOUSETYPE="ps/2" XEMU3="yes" XMOUSETYPE="PS/2" DEVICE=/dev/psaux [madonna@station madonna]$ sort /etc/sysconfig/mouse DEVICE=/dev/psaux FULLNAME="Generic - 2 Button Mouse (PS/2)" MOUSETYPE="ps/2" XEMU3="yes" XMOUSETYPE="PS/2"
  • 16. 22© 2007 Linux. Todos los derechos reservados. Opciones para especificar el orden de clasificación
  • 17. 23© 2007 Linux. Todos los derechos reservados. Sort Order [madonna@station madonna]$ ls -s /var/log/m* | sort 1236 /var/log/maillog.4 20 /var/log/maillog 216 /var/log/messages.3 3104 /var/log/maillog.1 4 /var/log/messages [madonna@station madonna]$ ls -s /var/log/m* | sort -n 4 /var/log/messages 20 /var/log/maillog 216 /var/log/messages.3 1236 /var/log/maillog.4 3104 /var/log/maillog.1
  • 18. 24© 2007 Linux. Todos los derechos reservados. Sort Keys [madonna@station madonna]$ ls -l /var/log/m* | sort -n -k5 -rw------- 1 root root 651 Oct 5 05:40 /var/log/messages -rw------- 1 root root 31187 Oct 5 06:05 /var/log/maillog -rw------- 1 root root 216885 Sep 22 10:22 /var/log/messages.3 -rw------- 1 root root 387345 Oct 5 04:07 /var/log/messages.1 -rw------- 1 root root 567049 Sep 14 04:08 /var/log/messages.4 Opciones para especificar teclas de clasificación [madonna@station madonna]$ head /etc/passwd | sort -t: -k6 bin:x:1:1:bin:/bin:/sbin/nologin news:x:9:13:news:/etc/news: root:x:0:0:root:/root:/bin/bash sync:x:5:0:sync:/sbin:/bin/sync halt:x:7:0:halt:/sbin:/sbin/halt daemon:x:2:2:daemon:/sbin:/sbin/nologin shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown adm:x:3:4:adm:/var/adm:/sbin/nologin lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin mail:x:8:12:mail:/var/spool/mail:/sbin/nologin En resumen, hemos visto que el comando sort puede utilizarse para clasificar datos estructurados, mediante la opción -k para especificar el campo de clasificación(quizás más de una vez) y la opción -t para especificar el delimitador del campo.
  • 19. 25© 2007 Linux. Todos los derechos reservados. El comando uniq  El programa uniq se utiliza para identificar, contar o suprimir registros duplicados en la información clasificada.
  • 20. 26© 2007 Linux. Todos los derechos reservados. Conteo de instancias de datos [madonna@station madonna]$ sort -n trial0 | uniq -u 4 16 [madonna@station madonna]$ sort -n trial1 | uniq -d 5 6 7 8 9 10  Los switches de parametros -d y -u permiten que el comando uniq identifique un dato unico o repetido (-c permite contar ocurrencias) [madonna@station madonna]$ sort -n trial1 | uniq -c 1 4 4 5 6 6 10 7 10 8 13 9 13 10 9 11 13 12 4 13 8 14 4 15 1 16 2 17 2 18 [madonna@station madonna]$ head trial1 10 10 10 13 8 8 10 10 8 6
  • 21. 27© 2007 Linux. Todos los derechos reservados. Extraer y reunir texto: cut y paste  Conceptos clave  El comando cut extrae textos de archivos de texto, basados en columnas especificadas por bytes, caracteres o campos.  El comando paste fusiona dos archivos de texto por línea.
  • 22. 28© 2007 Linux. Todos los derechos reservados. Extracción del texto con cut  El comando cut extrae columnas de texto desde un archivo de texto Opciones para el comando cut. Especificaciones de intervalo
  • 23. 29© 2007 Linux. Todos los derechos reservados. Extracción de texto por posición de caracter con cut -c [student]$ cat /proc/interrupts CPU0 0: 4477340 XT-PIC timer 1: 25250 XT-PIC keyboard 2: 0 XT-PIC cascade 3: 7344 XT-PIC ehci-hcd [student]$ grep '[[:digit:]]:' /proc/interrupts | cut -c1-15 0: 4512997 1: 27954 2: 0 3: 7344 [student]$ grep '[[:digit:]]:' /proc/interrupts | cut -c1-5,34- 0: timer 1: keyboard 2: cascade 3: ehci-hcd
  • 24. 30© 2007 Linux. Todos los derechos reservados. Extracción de campos de texto con cut -f  El comando cut también sirve para extraer texto que no está estructurado por la posición de caracteres, sino por un caracter delimitador tal como un TABULADOR o “:”. [student@rosemont hwdata]$ head -15 pcitable # This file is automatically generated from isys/pci. 0x0675 0x1700 "unknown" "Dynalink|IS64PH ISDN Adapter" 0x0675 0x1702 "hisax" "Dynalink|IS64PH ISDN Adapter" 0x09c1 0x0704 "unknown" "Arris|CM 200E Cable Modem“ [student@rosemont hwdata]$ cut -s -f3,4 pcitable | head "unknown" "Dynalink|IS64PH ISDN Adapter" "hisax" "Dynalink|IS64PH ISDN Adapter" "unknown" "Arris|CM 200E Cable Modem"
  • 25. 31© 2007 Linux. Todos los derechos reservados. Comando paste  El comando paste sirve para combinar archivos múltiples en una sola salida. [student@station student]$ cat file-1 File-1 Line 1 File-1 Line 2 File-1 Line 3 [student@station student]$ cat file-2 File-2 Line 1 File-2 Line 2 File-2 Line 3 student@station student]$ paste file-1 file-2 File-1 Line 1 File-2 Line 1 File-1 Line 2 File-2 Line 2 File-1 Line 3 File-2 Line 3
  • 26. 32© 2007 Linux. Todos los derechos reservados. Rastreo de diferencias: diff  Conceptos clave  El comando diff resume las diferencias entre dos archivos.  El comando diff es compatible con una gran variedad de formatos de salida que pueden escogerse mediante varias opciones. Al comando diff se le puede pedir que ignore ciertos tipos de diferencias tales como el uso de espacios en blanco o de mayúsculas.  El comando diff -r resume de modo recursivo las diferencias entre los dos directorios.  Al comparar directorios, se le puede pedir al comando diff que ignore los archivos cuyos nombres de archivo coincidan con patrones especificados.
  • 27. 33© 2007 Linux. Todos los derechos reservados. Comando diff  El comando diff está diseñado para comparar dos archivos similares, pero no idénticos y que generen salida que describa exactamente la diferencia. [blondie]$ diff README.pam_ftp.orig README.pam_ftp 11,12c11,12 < could login only with email adress < "ignore" allow invalid email adresses --- > could login only with email address > "ignore" allow invalid email addresses 18a19 > Spelling corrections applied by blondie, 22 Sep 2003
  • 28. 34© 2007 Linux. Todos los derechos reservados. Opciones para especificar el formato de salida diff
  • 29. 35© 2007 Linux. Todos los derechos reservados. Traducción de texto: tr  Conceptos clave  El comando tr traduce lectura de datos desde la entrada estándar.  En su forma más básica, el comando tr realiza sustituciones byte por byte.  Al utilizar la opción -d, el comando tr borrará caracteres especificados desde un flujo.  Al utilizar la opción -s se comprimirá una serie de caracteres repetidos en un flujo a una sola instancia del caracter.
  • 30. 36© 2007 Linux. Todos los derechos reservados. Comando tr  El comando tr es una utilidad muy versátil que realiza traducciones de caracter en flujos.  Traducir puede suponer sustituir un caracter por otro, borrar caracteres o "comprimirlos" (contrayendo secuencias repetidas de un caracter en uno).  El comando tr no espera nombres de archivo como argumentos.  el comando tr opera exclusivamente en el flujo de entrada estándar, reservando los argumentos de línea de comandos para especificar conversiones.
  • 31. 37© 2007 Linux. Todos los derechos reservados. Uso de tr para traducir caracteres [madonna@rosemont madonna]$ echo "abcdefghi" | tr fed xyz abczyxghi  tr command expects to be called with two arguments, each of which specify a range of characters [madonna@rosemont madonna]$ cat /etc/hosts # Do not remove the following line, or various programs # that require network functionality will fail. 127.0.0.1 localhost.localdomain localhost rha-server [madonna@rosemont madonna]$ tr a-z A-Z < /etc/hosts # DO NOT REMOVE THE FOLLOWING LINE, OR VARIOUS PROGRAMS # THAT REQUIRE NETWORK FUNCTIONALITY WILL FAIL. 127.0.0.1 LOCALHOST.LOCALDOMAIN LOCALHOST RHA-SERVER
  • 32. 38© 2007 Linux. Todos los derechos reservados. Revisión ortográfica: aspell  Conceptos clave – El comando aspell -c realiza revisiones ortográficas interactivas en los archivos. – El comando aspell -l realiza una revisión ortográfica en el flujo de entrada estándar. – El comando aspell dump puede utilizarse para ver el maestro del sistema o el directorio personal de un usuario. – Los comandos aspell create personal y aspell merge personal pueden utilizarse para crear o añadirse al directorio personal del usuario de una lista de palabras.
  • 33. 39© 2007 Linux. Todos los derechos reservados. Using aspell [prince@station prince] aspell -c toelvis  aspell es el utilitario primario para revisar la ortografía de los archivos de texto. Hey Elvis! I heard you were about to take the lab test for the string procesing workbook in Red Hat Academy. IIRC, its prety straightforward, if you've been keeping up with the exercises. LOL, Prince ========================================= 1) processing 6) preceding 2) precessing 7) professing 3) precising 8) promising 4) proceeding 9) proposing 5) prosing i) Ignore I) Ignore all r) Replace R) Replace all a) Add x) Exit ========================================= ?
  • 34. 40© 2007 Linux. Todos los derechos reservados. Formatear texto (fmt) y dividir archivos (split)  Conceptos clave  El comando fmt puede reformatear texto a diferentes anchuras.  Al usar la opción -p, el comando fmt sólo reformateará texto comenzado por el prefijo especificado, preservando el prefijo.  El comando split puede utilizarse para dividir un archivo sencillo en múltiples archivos basados en un número de líneas o en un número de bytes.
  • 35. 41© 2007 Linux. Todos los derechos reservados. Comando fmt  Al igual que la mayoría de los comandos de procesador de texto encontrados en este cuaderno, el comando fmt interpreta argumentos como nombres de archivos en los cuales operar, u operar en entrada estándar si ninguno es provisto. Su salida se escribe a la salida estándar. [elvis@station elvis]$ fmt -w60 side_effect.gvim One side effect of the variety of text editors in Linux, and in particular the coexistence of text editors and word processors, is the inconsistencies with which word wrapping is handled. [elvis@station elvis]$ fmt -40 side_effect.gvim One side effect of the variety of text editors in Linux, and in particular the coexistence of text editors and word processors, is the inconsistencies with which word wrapping is handled.
  • 36. 42© 2007 Linux. Todos los derechos reservados. Comando split  Es usado cuando se desea dividir un archivo en archivos más pequeños, cada uno con un número especificado de líneas o bytes. elvis@station elvis]$ split -200 pointless.txt sub_pointless_ [elvis@station elvis]$ wc sub_pointless_a* 200 1800 8892 sub_pointless_aa 200 1800 9000 sub_pointless_ab 200 1800 9000 sub_pointless_ac 200 1800 9000 sub_pointless_ad 200 1800 9001 sub_pointless_ae 66 594 3036 sub_pointless_af 1066 9594 47929 total
  • 37. 43© 2007 Linux. Todos los derechos reservados.

Editor's Notes

  1. [root@station station]# ls /boot boot.b lost+found System.map chain.b message System.map-2.4.21-9.EL config-2.4.21-9.EL message.ja vmlinux-2.4.21-9.EL grub module-info vmlinuz initrd-2.4.21-9.EL.img module-info-2.4.21-9.EL vmlinuz-2.4.21-9.EL kernel.h os2_d.b
  2. [root@station station]# ls /boot boot.b lost+found System.map chain.b message System.map-2.4.21-9.EL config-2.4.21-9.EL message.ja vmlinux-2.4.21-9.EL grub module-info vmlinuz initrd-2.4.21-9.EL.img module-info-2.4.21-9.EL vmlinuz-2.4.21-9.EL kernel.h os2_d.b
  3. [root@station station]# ls /boot boot.b lost+found System.map chain.b message System.map-2.4.21-9.EL config-2.4.21-9.EL message.ja vmlinux-2.4.21-9.EL grub module-info vmlinuz initrd-2.4.21-9.EL.img module-info-2.4.21-9.EL vmlinuz-2.4.21-9.EL kernel.h os2_d.b
  4. Se puede decir que las variantes de Bell (1era a 6ta= era una versión comercial continuada por AT&amp;T, y la versión de Berkley era una versión academica. Linux toma partes de cada una de estas ramas.
  5. [root@station station]# ls /boot boot.b lost+found System.map chain.b message System.map-2.4.21-9.EL config-2.4.21-9.EL message.ja vmlinux-2.4.21-9.EL grub module-info vmlinuz initrd-2.4.21-9.EL.img module-info-2.4.21-9.EL vmlinuz-2.4.21-9.EL kernel.h os2_d.b
  6. [root@station station]# ls /boot boot.b lost+found System.map chain.b message System.map-2.4.21-9.EL config-2.4.21-9.EL message.ja vmlinux-2.4.21-9.EL grub module-info vmlinuz initrd-2.4.21-9.EL.img module-info-2.4.21-9.EL vmlinuz-2.4.21-9.EL kernel.h os2_d.b
  7. [root@station station]# ls /boot boot.b lost+found System.map chain.b message System.map-2.4.21-9.EL config-2.4.21-9.EL message.ja vmlinux-2.4.21-9.EL grub module-info vmlinuz initrd-2.4.21-9.EL.img module-info-2.4.21-9.EL vmlinuz-2.4.21-9.EL kernel.h os2_d.b
  8. [root@station station]# ls /boot boot.b lost+found System.map chain.b message System.map-2.4.21-9.EL config-2.4.21-9.EL message.ja vmlinux-2.4.21-9.EL grub module-info vmlinuz initrd-2.4.21-9.EL.img module-info-2.4.21-9.EL vmlinuz-2.4.21-9.EL kernel.h os2_d.b
  9. [root@station station]# ls /boot boot.b lost+found System.map chain.b message System.map-2.4.21-9.EL config-2.4.21-9.EL message.ja vmlinux-2.4.21-9.EL grub module-info vmlinuz initrd-2.4.21-9.EL.img module-info-2.4.21-9.EL vmlinuz-2.4.21-9.EL kernel.h os2_d.b
  10. [root@station station]# ls /boot boot.b lost+found System.map chain.b message System.map-2.4.21-9.EL config-2.4.21-9.EL message.ja vmlinux-2.4.21-9.EL grub module-info vmlinuz initrd-2.4.21-9.EL.img module-info-2.4.21-9.EL vmlinuz-2.4.21-9.EL kernel.h os2_d.b