Variables en shell de linux

Páginas: 6 (1464 palabras) Publicado: 17 de octubre de 2013
Variables en shell de linux
En el shell se pueden definir variables y por tanto dentro de los scripts también. Aquí no hay declaración de tipos pero sí que podemos definir variables que contienen números, cadenas, booleanos e incluso arrays.
Para declarar una variable basta con hacer:
VARIABLE=valor
La podemos exportar para que se convierta en una variable global.
export VARIABLE
A partirde que se crea la variable ya podemos acceder a ella a través de su nombre con el símbolo del dólar por delante.
echo $VARIABLE
Este es un ejemplo de uso de variables:

#!/bin/sh
# Muestra el uso de variables # No existen los tipos
# definición de variables una_variable=666
MI_NOMBRE="Richard"
NOMBRES="Iñigo Asier Sten Roberto Pello" BOOLEANO=true
echo "Echemos un ojo a las variables "echo "Un número: ${una_variable}"
echo "Un nombre ${MI_NOMBRE}"
echo "Un grupo de nombres: ${NOMBRES}"
# Al script se le pueden pasar argumentos. Para recogerlos # hay que usar : ${número} donde:
# ${0} : nombre del script
# ${1} : primer argumento
# ${2} : segundo argumento
# ...etc.
echo "Has invocado el script pasándome ${0} eta ${1} "
arrays
Como ya se ha dicho, existe la posibilidadde declarar y usar arrays. Son algo limitados pero pueden resultar prácticos.
Este es un ejemplo de uso de arrays

#!/bin/bash
# Muestra el uso de arrays
# Podemos crear arrays de una dimensión asociaciones[0]="Gruslin" asociaciones[1]="Hackresi" asociaciones[2]="NavarradotNET" asociaciones[3]="Riberlug"
# Otra forma de definirlos
partidos=("UPN" "PSN" "CDN" "IUN" "Nafarroa BAI" "RCN" )numeros=(15 23 45 42 23 1337 23 666 69)
echo ${asociaciones[0]} es una asociación, ${partidos[1]} un partido
#echo "Tamaño: $#asociaciones" #echo "Tamaño: ${$#{partidos}}"
Otros usos
Muchas veces puede que nos interese tomar solamente parte del valor de una variable, o asignarle un valor por defecto. Este es un ejemplo de algunas cosas que podemos hacer con las variables:

#!/bin/bash
#Muestra el uso de variables
El mapa de ficheros y directorios en linux - Variables 26
4party Taller Shell, comandos y programación
# Sacar parte del valor de una variable (substring) NOMBRE="Navarrux Live edition"
echo ${NOMBRE} una parte ${NOMBRE:8} y otra ${NOMBRE:8:4}
# Valores por defecto.
# ${variable:­valorpordefecto}
SINVALOR=
echo "Variable SINVALOR: ${SINVALOR:­31337} eta${VACIO:­'Miguel Indurain'}" echo "La variable SINVALOR no tiene valor algun ${SINVALOR} "
# Esto es igual pero el valor queda establecido
# ${variable:=valorpordefecto}
echo "Variable SINVALOR: ${SINVALOR:=31337} eta ${VACIO:='Miguel Indurain'}" echo "La variable SINVALOR no tiene valor algun ${SINVALOR} "
# Y lo contrario: si la variable SÍ tiene valor, se le pone otro
# ${variable:+valorpordefecto}PROGRAMA='sniffit'
echo "valor de PROGRAMA: ${PROGRAMA:+'tcpdump'} y ahora ${PROGRAMA}"
# Si la variable está sin definir o vacía se muestra un error. En caso # contrario se le asigna un valor por defecto
# ${variable:?valorpordefecto}
echo "Valor de: ${EJEMPLO:?'Roberto'} y luego {EJEMPLO}"
# Otros
# ${!prefijo*} : nos devuelve una lista de las variables que comienzan # con determinadoprefijo.
# Podemos probar con el for:
for i in ${!P*};do echo $i ;done
Operaciones
Ya que tenemos variables, que menos que poder operar con ellas de alguna forma, Al igual que en cualquier otro lenguaje de programación disponemos de operadores aritméticos y lógicos, aunque su uso no es tan simple.
Aritméticas
Este es un ejemplo del uso de operaciones aritméticas
#!/bin/bash
# ­, +, *, /, %,**, variable++, variable­­, ­­variable, ++variable # == : igualdad
El mapa de ficheros y directorios en linux - Operaciones 27
4party Taller Shell, comandos y programación
# != : desigualdad
# Pruebas
VALOR1=23
VALOR2=45
# Para las operaciones puede usarse expr o []
RESULTADO=`expr ${VALOR1} + ${VALOR2}` echo "Resultado: ${RESULTADO}"
RESULTADO=`expr ${VALOR1} + ${VALOR2} + 3` echo...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • Variables De Shell Linux
  • Shell de linux
  • Comandos Shell en Linux
  • gnu linux shell
  • La Shell De Linux MI AMIGA Parte III
  • Shell Linux
  • El shell de linux
  • Shell de linux

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS