El uso de variables en la programación bash es muy sencillo, por ejemplo, para asignarle un valor a una variable se hacer como ya podrás imaginar VARIABLE=valor, sin embargo, para hace uso de ella tendremos que añadirle el $ al inicio, de modo que si quisiéramos imprimir su valor lo harías así: echo $VARIABLE.

Un ejemplo sería:
NOMBRE="Jorge Luis"
echo "Bienvenido $NOMBRE"
Que su salida sería:
Bienvenido Jorge Luis

También debemos conocer que existen variables de entorno las cuales podemos usar en nuestros scripts. Hay que tener mucho cuidado con estas variables, ya que un cambio podría implicar un mal funcionamiento no solo del programa si no de la terminal en si.

Y existen muchas mas que fácilmente podrás encontrar en google.

Los argumentos realmente se manejan como variables por que lo son de cierta forma, así que por ejemplo, si quisiéramos saber cual es el primer argumento que nos mandan tendríamos que usar $1, $2 para el segundo y así sucesivamente.

Por ello pongo la siguiente lista para saber como actúan: Así que a programar para ver si realmente es verdad lo que he dicho:
#!/bin/bash
echo "Variables y Argumentos"
echo "\\$HOME: $HOME"
echo "\\$PATH: $PATH"
echo "\\$TERM: $TERM"
echo "\\$$: Identificador del proceso: $$"
echo "\\$?: Resultado de la ejecución del comando anterior: $?"
echo "\\$@: Crea y devuelve un Array con todos los argumentos con posición: $@"
echo "\\$*: Todos los argumentos: $*"
echo "\\$#: Cantidad de Argumentos: $#"
echo "\\$0: Nombre del archivo: $0"
echo "\\$1: Primer Argumento: $1"
echo "\\$2: Segundo Argumento: $2"
Ejecutamos el script:
$ chmod +x script02
$ ./script02 uno dos tres
Variables y Argumentos
$HOME: /home/lesthack
$PATH: /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games
$TERM: xterm
$$: Identificador del proceso: 8671
$?: Resultado de la ejecución del comando anterior: 0
$@: Crea y devuelve un Array con todos los argumentos con posición: uno dos tres
$*: Todos los argumentos: uno dos tres
$#: Cantidad de Argumentos: 3
$0: Nombre del archivo: ./script02
$1: Primer Argumento: uno
$2: Segundo Argumento: dos

Así que como lo hemos visto, ya podemos tratar los argumentos para alguna posible acción.

Jorge Hernandez :: http://jorgeluis.com.mx

Publicaciones que te pueden interesar...

Programación en Bash Linux I: Hola mundo

XII Feria del Libro Cortazar, GTO