Es un tipo de variables que se envían al proceso shell cuando se llama. Es un argumento de proceso, los argumentos de asignación de valor se agregan a la derecha del nombre del proceso cuando se invoca.
Hay un límite de nueve argumentos que se pueden citar: de $1 a $9. No obstante, la orden de cambio produce un desplazamiento hacia la derecha en la referencia de argumentos:
De esta manera, se puede crear un procedimiento que pueda abordar más de nueve argumentos.
Se puede acceder a todos los argumentos de otra manera utilizando $*. Cuando se usa el procedimiento shell, esta variable se expande a todos los argumentos especificados.
El parámetro $# recibe el valor de todos los argumentos especificados.
Los shells soportan dos clases de variables: locales, que pertenecen al shell que estamos usando y no se declaran cuando salimos del shell, y globales, que permanecen activas, aunque cambiemos de shell.
Las variables se clasifican en dos categorías:
Es posible crear y utilizar estas variables tanto dentro de un proceso shell como en el modo interactivo desde el indicador del sistema.
Es crucial tener en cuenta que una variable solo tendrá un valor dentro del proceso para el que fue creada.
Estas son algunas variables de entorno que se muestran en la siguiente imagenLa siguiente imagen muestra algunas variables de entorno.
Fig 22. tabla de variables en shell
Hay que ejecutar la orden establecida para ver el valor de todas las variables definidas en un instante determinado.
El valor que se le da a una variable puede afectar a otra variable. En situaciones como esta, es conveniente y a veces necesario identificar el nombre de la variable entre corchetes.
Cuando hay varias palabras separadas por espacios en el valor asignado, se deben usar comillas para mantener estos espacios en la definición de la variable.
La salida de una orden UNIX se puede asignar como valor de una variable. En este ejemplo, la orden UNIX se cierra entre caracteres con acento grave (`) después de igual.
La lectura de valores utilizando READ es una asignación externa a las variables del shell.
La sentencia READ se puede usar para capturar los valores de las variables del shell a través del teclado o de otros ficheros, lo que es similar a la lectura de una variable en cualquier lenguaje de programación.
Estos son algunos ejemplos de uso de variables.
#!/bin/bash
#Ejemplo 1: Variable numérica entera
edad=25
echo "Mi edad es $edad años."
#Ejemplo 2: Variable de cadena
nombre="Juan"
echo "Mi nombre es $nombre."
#Ejemplo 3: Variable de punto flotante
precio=19.99
echo "El precio del artíuculo es $precio dólares."
#Ejemplo 4: Variable booleana
activo=true
if [ $activo = true ]; them
echo "La función está activa."
else
echo "La función está desactivada."
fi
#Ejemplo 5: Variable de array
colores=("rojo" "verde" "azul")
echo "Mis colores favoritos son ${colores[0]}, ${colores[1]} y ${colores[2]}."
Fig 23. Uso de variables en terminal
El shell tiene una serie de variables de entorno predefinidas. Algunas de ellas se pueden cambiar asignándole un valor diferente al que está incorrecto. Algunos son solo de lectura y pueden ser usados, pero no modificados. Las variables predefinidas modificables más fascinantes son: