Estructuras de control, bucles y operadores
- Por Larry Hans Arroyo Vargas
- Publicado 09.06.08
- Bash
- Sin valorar
La base indiscutible (después de las variables) de todo
lenguaje, es la habilidad de tomar decisiones dependiendo de qué circunstancia
acontezca en el momento de la ejecución del guion. Para este tipo de casos los
lenguajes ofrecen su juego de condicionales y por supuesto las opciones para
bucles, que le permiten comportarse de una manera inteligente.
Un ejemplo sencillo sería el siguiente:
#!/bin/bash VARIABLE=correcto if [ "$VARIABLE" = "correcto" ]; then echo "valido" else echo "falso" fi
En este caso, debemos considerar que los espacios entre
if [ la variable, el operador, la cadena y el ] final, son importantes, debido
a que por defecto no los limita al declararlos, entonces hay que tener cuidado
con estos detalles.
El resultado de este ejemplo sería evidentemente el
siguiente:
[root@ns01 bash]# sh bash.sh
valido
[root@ns01 bash]#
En el código en la línea 4, utilizamos el operador =
que funciona para indicar que si la variable es igual al contenido de la
cadena, entonces debe lanzar el resultado positivo.
No obstante IF, THEN y FI, no son las únicas
estructuras disponibles, a continuación el detalle de las mismas:
if/else: Ejecuta una serie
de comandos dependiendo si una cierta condición se cumple o no.
for: Ejecuta una serie
de comandos un número determinado de veces, siempre y cuando se cumplan las
condiciones.
while: Ejecuta una seria
de comandos mientras que una determinada condición sea cumpla. En general es
muy similar a for.
until: Ejecuta una serie
de comandos hasta que una determinada condición se cumpla.
case: Ejecuta una o
varias listas de comandos dependiendo del valor de una variable.
select: Permite seleccionar
al usuario una opción de una lista de opciones en un menú.
La mayoría de condiciones utilizadas con estas construcciones son
comparaciones de cadenas alfanuméricas o numéricas, valores de terminación de
comandos y comprobaciones de atributos de ficheros. Antes de seguir viendo como
estas construcciones operan, vamos a ver como las condiciones se pueden definir
y trabajar propiamente hablando.
