Paso de parámetros y opciones
Clase 15 de 43 • Curso de Programación en Bash Shell
Resumen
¿Cómo manejar opciones y parámetros en un script de Bash?
En esta clase abordamos el interesante mundo del manejo de opciones y parámetros dentro de scripts en Bash. Para quienes buscan mejorar sus habilidades en la programación de scripts, dominar estos conceptos es fundamental. Exploramos cómo enviar opciones de manera independiente o complementaria y cómo leer sus valores según el método de envío.
¿Qué consideraciones debemos tener?
Al trabajar con scripts, es crucial tener en mente las siguientes consideraciones:
- Envío independiente o complementario: Las opciones pueden enviarse de manera independiente o junto con parámetros. Es esencial entender cómo manejar ambas.
- Método de lectura de valores: La manera de leer los valores cambiará dependiendo del tipo de envío.
¿Cómo ejemplificamos el uso de opciones y parámetros?
Vamos a crear un script en un servidor Ubuntu para ilustrar estos conceptos. Sigamos paso a paso:
-
Copiado de un script previo: Comenzamos duplicando un script existente para crear uno nuevo llamado
options.sh
. Usamos el siguiente comando para copiar:cp script8.sh 9-options.sh
-
Edición del script: Al abrir el archivo nuevo, actualizamos la descripción para reflejar el ejercicio de envío de opciones con o sin parámetros. Eliminamos las líneas no necesarias presionando
DD
(para eliminar líneas en vi). -
Creación de un programa de ejemplo: Añadimos un título al script y listamos las opciones ingresadas. Utilizamos el comando
echo
para imprimir texto:echo "Programa opciones" echo "Opción 1 enviada: $1" echo "Opción 2 enviada: $2" echo "Opciones enviadas: $*"
¿Cómo recuperamos valores enviados?
Para manejar y recuperar valores de opciones y parámetros, es indispensable usar un bucle while
en combinación con un case
. El while
ayuda a determinar si el argumento es una opción o un parámetro. Veamos un ejemplo:
while [ -n "$1" ]; do
case "$1" in
-a) echo "-a opción utilizada" ;;
-b) echo "-b opción utilizada" ;;
-c) echo "-c opción utilizada" ;;
*) echo "$1 no es una opción" ;;
esac
shift
done
¿Qué resultados podemos esperar al ejecutar el script?
Al ejecutar el script y enviar los argumentos, el programa distinguirá entre opciones y parámetros. Por ejemplo:
./9-options.sh argumento1 argumento2 -a
El resultado mostrará:
- Opción 1 enviada: argumento1
- Opción 2 enviada: argumento2
- Opciones enviadas: argumento1 argumento2 -a
- -a opción utilizada
Es vital destacar que la opción se reconoce debido al prefijo -
(guion), diferenciando una opción de un parámetro.
El conocimiento de cómo manejar correctamente opciones y parámetros en scripts de Bash te permitirá ejecutar procesos específicos y manipular datos de manera eficiente. Este es solo un primer vistazo, pero una vez que domines estos conceptos, tus scripts ganarán en versatilidad y flexibilidad. ¡Sigue practicando y explorando!