El Manual de BASH Scripting Básico para Principiantes/Opciones (parámetros)
El uso de parámetros en BASH
editarAl ejecutar un script, tenemos una función muy útil que son las opciones, mejor conocidas como parámetros; es decir, son especificaciones que se le hacen al programa al momento de llamarlo para obtener un efecto diferente.
Ejemplo:
bash $ mount -a
El -a
es un parámetro para el programa mount
, en este caso lo que hace es montar todas las unidades del FSTAB (aunque esto no tiene mucho que ver en este momento con Bash, es tan solo un ejemplo.)
La pregunta es, ¿como implementar esto en nuestro script?
Como usar parámetros en BASH
editarBien, si por ejemplo tenemos el siguiente script:
# !/bin/bash
RNM=`expr $RANDOM % 11`
if [ $1 = $RNM ] ; then
echo "Acertaste, el número "$1" es correcto"
else
echo "Has errado"
fi
¿Como es posible que funcione si no le hemos pedido que ejecute read
para obtener el valor de la variable $1
?
En realidad es muy simple, ya que nuestro script lo llamaríamos así (por ejemplo):
bash $ ./adivina.sh 6
El 6
es el primer parámetro, en Bash pasa directo como la variable $1
, si hubiéramos asignado mas parámetros se les iría asignando sucesivamente a las variables $2
, $3
, etc...
Como manejar los parámetros
editarOtra interesante función de Bash es que podemos trabajar con los parámetros de otras maneras, por ejemplo miren este script:
# !/bin/bash
echo "El nombre del fichero en ejecución es: $0"
echo "El primer parámetro es: $1"
echo "El segundo parámetro es: $2"
echo "Los parámetros son: $*"
echo "La cantidad de parámetros pasados es de $# parámetros"
exit 0
Ahora ejecutamos el script:
bash $ ./parámetros.sh primero segundo El nombre del fichero en ejecución es: ./parámetros.sh El primer parámetro es: primero El segundo parámetro es: segundo Los parámetros son: primero segundo La cantidad de parámetros pasados es de 2 parámetros
Esto amplía nuestros horizontes para realizar eficientes scripts.