educación, informática y demás

2309 - Automatization Scripts

Obteniendo información de un operador. Teclado y redirecciones de entrada

En este ejemplo de script vamos a aprender como obtener información de un operador humano a través de teclado, pero también vamos a aprender a pasar información a través de un fichero de entrada utilizando las redirecciones de entrada.

Ejemplo de script doSomething.sh

El script doSomething.sh pide al operador que inserte un valor por teclado y después hace algo con él. Mientras el operador siga insertando datos por teclado, el script continuará solicitando un nuevo dato y realizando una acción con él.

Si ejecutamos el script nos encontramos con esto:

Podemos ver como el script solicita información y realiza la operación mientras el operador inserte datos. Si no inserta ningún dato, entonces no realiza ninguna operación.

El problema es que la información la tenemos que escribir a mano de forma interactiva, pero ¿y si quisiéramos pasarle mucha información, por ejemplo desde un fichero?

Redirección de entrada

Podemos utilizar una redirección de entrada para pasarle información a un script que solicite información al operador a través de teclado. No tenemos que modificar nada del código fuente, tan solo tenemos que escribir un fichero con información.

Vamos a crear un fichero con datos

El fichero se llama datos.txt

Vamos a pasarle el fichero con redirección de entrada

El problema está con el -z y la variable a la hora de comprobar que está vacío. La solución, utilizar otra comparación.

Ahora al ejecutarlo nos encontramos con esta salida

Dejar una respuesta