Ejercicios Prácticos de Shell Scripting: Manipulación de Ficheros y Datos

Enviado por Chuletator online y clasificado en Matemáticas

Escrito el en español con un tamaño de 4,24 KB

A continuación, se presentan una serie de ejercicios prácticos para la manipulación de ficheros y datos utilizando comandos de shell scripting. Cada ejercicio incluye una descripción del problema y su respectiva solución.

  1. Ordena el fichero numeros.txt ascendentemente.

    Solución: sort numeros.txt

  2. Ordena el fichero numeros.txt descendentemente.

    Solución: sort -r numeros.txt

  3. Obtén el fichero solonum.txt con los datos del fichero numeros.txt sin líneas repetidas.

    Solución: sort numeros.txt | uniq > solonum.txt

  4. Muestra el número de líneas del fichero numeros.txt.

    Solución: wc -l numeros.txt

  5. Muestra el número de palabras de numeros.txt, sin contar las líneas repetidas y sin utilizar el fichero solonum.txt.

    Solución: sort numeros.txt | uniq | wc -w

  6. Muestra sólo las líneas duplicadas del fichero numeros.txt (tiene que mostrarse todas las veces que aparece).

    Solución: sort numeros.txt | uniq -D

  7. Muestra el fichero numeros.txt con sólo las líneas duplicadas (una fila por línea duplicada) con el número de ocurrencias.

    Solución: sort numeros.txt | uniq -cd

  8. A partir del fichero ventas.txt obtener el fichero marta.txt con los datos de Marta Gines.

    Solución: grep -i "^Marta Gines" ventas.txt > marta.txt

  9. A partir del fichero ventas.txt obtener el fichero pruebas.txt con los datos de ventas que el comercial no empiece ni por M ni por J.

    Solución:

    grep -i "^[^MJ]" ventas.txt > pruebas.txt

    grep -iv "^[MJ]" ventas.txt > pruebas.txt

  10. Copia todos los ficheros de ventas que están en /usr/ASIR/ISO/FICHEROS-UNIX a tu directorio de trabajo.

    Solución: cp /usr/ASIR/ISO/FICHEROS-UNIX/ventas* ~

  11. A partir de todos los ficheros de ventas obtén el fichero italia913.txt con los datos de las ventas en Italia para los años 91, 92, 93.

    Solución: grep -i "/9[123];" ventas* | grep -i ";italia;" > italia913.txt

  12. Muestra los datos del fichero ventas.txt ordenadas por producto.

    Solución: sort -t ";" -k 2 ventas.txt

  13. Muestra las ventas de pimienta de Pedro en Francia del fichero ventas.txt. ¿De qué dos formas diferentes lo puedes hacer?

    Solución:

    grep -i ";pimienta;" ventas.txt | grep -i "^pedro" | grep -i ";francia;"

    grep -i "^pedro.*;pimienta;.*;francia;" ventas.txt

  14. Mostrar los datos del fichero ventas.txt de los comerciales que no son Pedro ordenado por producto.

    Solución: grep -iv "^pedro" ventas.txt | sort -t ";" -k 2

  15. Ordena descendentemente el fichero ventas.txt eliminando las líneas duplicadas y guarda el resultado en ordena.txt sin utilizar >.

    Solución: sort -r -u ventas.txt -o ordena.txt

  16. Muestra las ventas de Pedro de los ficheros de ventas 94, 95 y 96.

    Solución: grep -i "^pedro" ventas9[456].txt

  17. Muestra el nombre de los ficheros de ventas que contienen la palabra Canada.

    Solución: grep -il "canada" ventas*

  18. Vete a tu directorio home.

    Solución: cd

  19. A partir del fichero numeros.txt, muestra los números ordenados, sin repeticiones y en una misma línea:

    Solución:

    sort -u numeros.txt | paste -s

    sort numeros.txt | uniq|paste -s

Entradas relacionadas: