programacion en bash
Post on 26-Jul-2015
221 Views
Preview:
TRANSCRIPT
Programación en BASH
Variables
Las variables en un script BASH son simplemente identificadores, sin tipo.Para asignar un valor a una variable, se utiliza el operador =.Por ejemplo:
Por convención, los nombres de las variables se usan en mayúsculas,aunque no es obligatorio.
Para usar el contenido de la variable, dentro de un script, se usa eloperador $. Por ejemplo:
user1@zeus$ EDAD=35
user1@zeus$ echo $EDAD 35 user1@zeus$
Variables
Para utilizar el contenido de una variable, seguida de un texto, debemos usar lasllaves {}
Consideremos este ejemplo:
En este caso, bash interpretaría a $ARCHIVO y $ARCHIVO-bak como dosvariables distintas, para evitar esto debemos reescribirlo de esta manera:
ARCHIVO="/tmp/ej" mv $ARCHIVO $ARCHIVO-bak
ARCHIVO="/tmp/ej" mv $ARCHIVO ${ARCHIVO}-bak
Variables
Variables Locales
Las variables locales son definidas para operar dentro de un ámbito reducido de trabajo, ya sea en un programa, en una función o en un bloque de código. Fuera de dicho ámbito de operación, la variable no tiene un valor preciso.
Una variable tiene un nombre único en su entorno de operación, sin embargo pueden - aunque no es nada recomendable - usarse variables con el mismo nombre en distintos bloques de código.
Variables
Variables Locales
El siguiente ejemplo muestra los problemas de comprensión y depuración de código que pueden desatarse en caso de usarse variables con el mismo nombre. En la primera fila se presentan 2 programas que usan la misma variable y en la segunda, la ejecución de los programa.
#/bin/bash # prog1 - variables prueba1 VAR1=prueba echo $VAR1
#/bin/bash # prog2 - variables prueba2 VAR1="otra prueba" echo $VAR1
user1@zeus$ echo $VAR1
user1@zeus$ prog1 prueba user1@zeus$ prog2 otra prueba user1@zeus$ prog1 prueba
Variables
Variables locales a la función Existe la posibilidad de utilizar variables locales a la función, esto significa que la
variable solamente va a existir durante la ejecución de la función.
Para crear una variable local a la función se utilizar el operador: "local <nombre_de_variable>". Ejemplo:
func () { local x x=$1 echo "Dentro de la función \$x vale ($x)"
}
echo "Antes de ejecutar la función \$x vale ($x)"
func HOLA!! echo "Después de ejecutar la función \$x vale ($x)"
top related