You are on page 1of 3

Actividad 8: Tratamiento de ficheros IV. Bsqueda, ordenacin y extraccin selectiva de datos.

Bsqueda DE ficheros -------------------En microLINUX la utilidad 'find' es la encargada de realizar la bsqueda de ficheros y directorios dentro del sistema. Cuando el usuario desea localizar la ubicacin de uno o ms ficheros debe hacer uso del comando 'find' acompaado del correspondiente modificador. Algunas de las opciones son: - Listado de todos los ficheros (incluido su path) desde la posicin actual en el rbol de directorios: #find - Listado de todos los directorios del sistema: # find / -type d - Listado de todos los enlaces: # find -type l - Bsqueda del fichero "fichero_perdido" desde el directorio raz: # find / -name fichero_perdido Bsqueda EN ficheros -------------------Tambin es posible la bsqueda de patrones (cadenas de caracteres) en el interior de un fichero. Esta labor la lleva a cabo el comando 'grep'. - Bsqueda de la fila del fichero agenda.txt que contiene la cadena "cadena_a_buscar": #grep cadena_a_buscar agenda.txt Ordenacin DE ficheros ---------------------Para presentar por pantalla el listado de fichero de un directorio, segn un criterio concreto, ordenado en modo ascendente o descendente, deben aplicarse los modificadores oportunos al comando 'ls'. Algunos ejemplos son: - Ordenar en orden inverso los ficheros del directorio actual: # ls -r - Ordenar los ficheros ordenados por extensin: # ls -X - Ordena los ficheros de todo el sistema de ficheros segn su tamao: # ls -S -R

Ordenacin EN ficheros ---------------------El comando 'sort' imprime lneas de texto en orden alfabtico u ordenadas por alguna otras regla que el usuario especifique. Todos los ficheros que acompaan al comando en la orden son concatenados, y el resultado es ordenado y presentado por pantalla. Por ejemplo: - Ordenar el contenido de un fichero en orden descendente: #sort -r fichero_de_usuario - Ordenar numricamente (primeros las lneas que empiezan por 0, luego las que comienzan con 1 y as sucesivamente): #sort -n fichero_de_usuario Extraccin selectiva de datos en ficheros ----------------------------------------MicroLINUX ofrece la posibilidad de obtener parcialmente el contenido de un fichero en vez de mostrar el conjunto de la informacin. Existen tres posibilidades: 1 Tomar las primeras (10 por defecto) lneas: Comando 'head'. 2 Tomar las ltimas (10 por defecto) lneas: Comando 'tail'. 3 Extraer Columnas de texto de un fichero: Comando 'cut'. Una "columna" est definida por un conjunto de bytes, caracteres campos (por ejemplo elcarcter que ocupa la posicin 19 de cada lnea). A continuacin se muestran ejemplos de los comandos 'head', 'tail' y 'cut'. - Presenta las primeras 4 lneas de un fichero: #head -n 4 fichero_de_usuario - Presenta las 4 ltimas lneas de un fichero: #tail -n 4 fichero_de_usuario - Muestra el carcter dcimo noveno de cada columna: #cut -c19 fichero_de_usuario - Muestra el byte n 19 de cada columna: #cut -b19 fichero_de_usuario - En un fichero de texto donde cada lnea tiene este formato: /----------+----------+---------------+---=> Campos (fields) | | | | v v v v L1campo1 , L1campo2 , L1campo3 , .. , L1campoj

L2campo1 , L2campo2 , L2campo3 , .. , L2campoj .. .. .. .. Lncampo1 , Lncampo2 , Lncampo3 , .. , Lncampoj ^ ^ ^ ^ | | | | \----------+----------+----+---------=> Delimitadores Obtener el valor del campo 3 utilizando la coma como delimitador en vez de <Tab> (por defecto): #cut -d, -f3 fichero_con_campos - Obtener los primeros 6 caracteres de cada lnea: #cut -c1-6 fichero_de_usuario - Obtener los caracteres que ocupan la posicin 2, 4, 8 y 10 de cada lnea: #cut -c2,4,8,10 fichero_de_usuario T A R E A S ----------1 Buscar la ubicacin del comando 'find' en el rbol de directorios, haciendo uso de s mismo. 2 Presentar en pantalla en orden inverso el contenido del directorio localizado en el punto anterior. 3 Crear un fichero que ser utilizado como base de datos para almacenar una agenda de clientes. El formato y los campos debe tener esta forma: 1:Nombre:Apellido:Direccin:Telfono:E-mail:Comentarios .. 9 ... E incluir 9 clientes. (nota: El fichero se llamar bd_clientes.txt, y debe existir un cliente con tu nombre) 4 Buscar las lneas que contengan tu nombre usando el comando 'grep'. 5 Listar los datos de los 3 primeros clientes en bd_clientes.txt. 6 Listar los datos de los 2 ltimos clientes. 7 Listar el nombre de todos los clientes. 8 Listar ordenados de forma inversa todos los registros. 9 Presentar en pantalla las primeras 20 columnas de bd_clientes.txt. <->

You might also like