educación, informática y demás

2405 - Scripts GNU/Linux

Ejercicios simples

Ejercicio 01 – Solicita entrada

Crea un script que solicite entrada al usuario por teclado. Por ejemplo, solicita una ruta de un fichero al operador por teclado. Si el fichero no existe mostrará un mensaje de error.

Ejercicio 02 – Datos del fichero

Crea un script que solicite entrada al usuario por teclado. Por ejemplo, solicita una ruta de un fichero al operador por teclado. Si el fichero no existe mostrará un mensaje de error.

Ahora recorreremos el fichero línea a linea. Para cada línea del fichero mostraremos la cadena de texto con el número de línea. Por ejemplo:

[1] – Linea

[2] – Linea

….

Ejercicio 03 – Datos del fichero

Crea un script que solicite entrada al usuario por teclado. Por ejemplo, solicita una ruta de un fichero al operador por teclado. Si el fichero no existe mostrará un mensaje de error.

Ahora recorreremos el fichero línea a linea. Para cada línea del fichero mostraremos la cadena de texto: Linea.

Crea un script que solicite entrada al usuario por teclado. Por ejemplo, solicita una ruta de un fichero al operador por teclado. Si el fichero no existe mostrará un mensaje de error.

Ahora recorreremos el fichero línea a linea. Para cada línea del fichero almacenaremos en el fichero dataFile.log una cadena de texto con el número de la línea y el contenido de la linea. Si el fichero dataFile.log existe, no lo sobrescribimos.

Ejercicio 04 – Datos del fichero

Crea un script que solicite entrada al usuario por teclado. Solicita una ruta de un fichero al operador por teclado. Si el fichero no existe mostrará un mensaje de error, pero no terminará la ejecución del script.

Mientras el usuario inserte la ruta de un fichero, el script continuará realizando la acción para el fichero y solicitando una nueva ruta de fichero.

La acción consiste en que recorreremos el fichero línea a linea. Para cada línea del fichero almacenaremos en el fichero dataFile.log una cadena de texto con el número de la línea y el contenido de la linea. Si el fichero dataFile.log existe, no lo sobrescribimos.

Ejercicio 05 – Datos del fichero

Crea un script que reciba por parámetro una cadena o un patrón de texto a buscar en distintos ficheros. Es obligatorio pasar este parámetro al script para que funcione como debería.

El script solicitará una ruta de un fichero al operador por teclado. Si la ruta del fichero no existe mostrará un mensaje de error, pero no terminará la ejecución del script.

Mientras el usuario inserte la ruta de un fichero, el script continuará realizando la acción para el fichero y solicitando una nueva ruta de fichero.

La acción consiste en que recorreremos el fichero línea a linea. Para cada línea del fichero almacenaremos en el fichero dataFile.log una cadena de texto con el número de la línea y el contenido de la linea solo si esta linea contiene el patrón solicitado por parámetro. Si el fichero dataFile.log existe, no lo sobrescribimos.

Solución propuesta

Ejercicio 06 – Datos del fichero

Crea un script que reciba por parámetro una cadena o un patrón de texto a buscar en distintos ficheros. Es obligatorio pasar este parámetro al script para que funcione como debería.

El script solicitará una ruta de un fichero al operador por teclado. Si la ruta del fichero no existe mostrará un mensaje de error, pero no terminará la ejecución del script.

Mientras el usuario inserte la ruta de un fichero, el script continuará realizando la acción para el fichero y solicitando una nueva ruta de fichero.

La acción consiste en que recorreremos el fichero línea a linea. Para cada línea del fichero almacenaremos en el fichero de log una cadena de texto con el número de la línea y el contenido de la linea solo si esta linea contiene el patrón solicitado por parámetro. Si el fichero fichero de log existe, no lo sobrescribimos.

El fichero de log se almacenará en el directorio /etc/educatica. Si este directorio, /etc/educatica/ no existe debemos crearlo y configurarlo para que el usuario root pueda acceder a dicho directorio con permisos de lectura y escritura, el resto de usuarios podrá acceder para realizar solo operaciones de lectura.

Solución propuesta

Añadimos comprobación de root como usuario que ejecuta el script, comprobamos si no existe el directorio lo creamos y lo configuramos.

Ejercicio 07 – Completo

Crea un script que se encargue de buscar una cadena de texto en varios ficheros elegidos por el operador. El script mostrará en pantalla las líneas de los ficheros que contienen dicho patrón y, además, lo almacenará en un fichero de log dentro del directorio de información /etc/educatica.

El script recibirá por parámetro una cadena de texto o patrón a buscar en los distintos ficheros. Es obligatorio pasar este parámetro al script para que funcione como debería.

El script solicitará la ruta de un fichero al operador por teclado. Si la ruta del fichero no existe mostrará un mensaje de error, pero no terminará la ejecución del script.

Mientras el usuario inserte la ruta de un fichero, el script realizará las acciones solicitadas con el fichero y solicitando una nueva ruta de fichero.

Una vez con la ruta de un fichero, recorreremos el fichero línea a linea. Para cada línea del fichero almacenaremos en el fichero de log una cadena de texto con el número de la línea y el contenido de la linea solo si esta linea contiene el patrón solicitado por parámetro. Si el fichero fichero de log existe, no lo sobrescribimos. Además de almacenar la línea en el fichero, mostraremos la línea en pantalla. Si la línea procesada no contiene el patrón, ni la mostramos ni la almacenamos.

El fichero de log se almacenará en el directorio /etc/educatica. Si este directorio no existe debemos crearlo y configurarlo para que el usuario root pueda acceder a dicho directorio con permisos de lectura y escritura, el resto de usuarios podrá acceder para realizar solo operaciones de lectura.

Realiza las comprobaciones necesarias para asegurarte de que el script funcionará de forma adecuada.

Ejercicio 08 – Completo con extra

Vamos a recibir una lista variable de parámetros con patrones a buscar. Modifica el código de la forma más sencilla posible para poder realizar esta acción.

Dejar una respuesta