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.
Ordena el fichero
numeros.txt
ascendentemente.Solución:
sort numeros.txt
Ordena el fichero
numeros.txt
descendentemente.Solución:
sort -r numeros.txt
Obtén el fichero
solonum.txt
con los datos del ficheronumeros.txt
sin líneas repetidas.Solución:
sort numeros.txt | uniq > solonum.txt
Muestra el número de líneas del fichero
numeros.txt
.Solución:
wc -l numeros.txt
Muestra el número de palabras de
numeros.txt
, sin contar las líneas repetidas y sin utilizar el ficherosolonum.txt
.Solución:
sort numeros.txt | uniq | wc -w
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
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
A partir del fichero
ventas.txt
obtener el ficheromarta.txt
con los datos de Marta Gines.Solución:
grep -i "^Marta Gines" ventas.txt > marta.txt
A partir del fichero
ventas.txt
obtener el ficheropruebas.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
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* ~
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
Muestra los datos del fichero
ventas.txt
ordenadas por producto.Solución:
sort -t ";" -k 2 ventas.txt
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
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
Ordena descendentemente el fichero
ventas.txt
eliminando las líneas duplicadas y guarda el resultado enordena.txt
sin utilizar>
.Solución:
sort -r -u ventas.txt -o ordena.txt
Muestra las ventas de Pedro de los ficheros de ventas 94, 95 y 96.
Solución:
grep -i "^pedro" ventas9[456].txt
Muestra el nombre de los ficheros de ventas que contienen la palabra Canada.
Solución:
grep -il "canada" ventas*
Vete a tu directorio home.
Solución:
cd
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