Tutoriales y trucos de computacion
Inicio
Tutoriales
¿Cómo...? en Unix
Tips para MS Office
Navegar en internet
Links
Productos en internet
Envíanos un tutorial
 
Vota por este sitio en Los Mejores de RedFind
 
Agregar Web - Directorio de webs

Add to Google

Add to Technorati Favorites

Downloads para Wii

Ahora podrás tener muchos más juegos para Wii, aquí podrás realizar todas las descargas para tu Wii que a ti te intersen, ya sean juegos, películas, software, etc.

Ir a  "Descargas para Wii"

 

RSS de la sección de "Tutoriales"

RSS Tutoriales




Agregar a favoritos

 
 






Google
 
Programación Shell de Unix Imprimir E-Mail
Índice del Artículo
Programación Shell de Unix
Sintáxis
Estructuras de control
Operador test
 

Estructuras básicas de control 

De forma somera podemos decir que el uso de las estructuras básicas de control nos permite indicarle al programa que acción tomar con base en diferentes variables o condiciones que se presenten durante la ejecución del mismo.


Las principales estructuras básicas de control son:

  • if ... then ... else
  • case
  • while
  • for
  • until

 

If ... then ... else

Esta sentencia nos sirve para definir que si se cumple cierta condición ejecute un comando (o serie de comandos) y si no se cumple la condición que ejecute otro conjunto de comandos (o nada). La sintaxis más básica de esta instrucción es de la siguiente manera

if condición ; then comandos ; fi 

o en diferentes líneas:

if condición
then
    comandos
fi

Cuando sea una sola condición y un sólo comando es recomendable utilizar la primera sintaxis y para instrucciones de más de un comando se entiende mejor en la opción de diferentes líneas.

Otras sintaxis para la sentencia if con más opciones son:

if condición
then
    comandos1
else
    comandos2
fi 

Con esta sintaxis, lo que logramos es revisar una condición y en caso que se cumpla ejecutará la serie de comandos1 y si no se cumple ejecutará la serie de comandos2. Si requerimos más opciones podemos utilizar:

if condición1
then
    comandos1
elif condición2
then
    comandos2
...
fi

En esta forma de sintaxis,como podrás ver cambia la palabra else por elif (abreviación de else if), lo cual nos permite evaluar una segunda condición si no se cumple la primera y así sucesivamente podemos evaluara tantas condiciones como queramos.

Case

Esta instrucción nos permite evaluar una variable entre sus posibles valores para ejectura comandos de acuerdo al valor de la variable. La sintaxis es de la siguiente forma:

case variable in
    patron1)
        comandos1;;
    patron2|patron3)
        comandos2;;
    ...
esac

Podemos utilizar también el caracter | como cláusula ó, es decir que si la variable tiene un valor o el otro realice la acción.

While

Nos permitirá crear un ciclo para la ejecución de sentencias de manera continua hasta el cumplimiento de una condición o hasta que se le indique salir del ciclo. En este tipo de sentencias tenemos que tener cuidado de no crear ciclos que no tengan salida ya que nuestra ejecución nunca terminaría de manera normal, por lo que tendríamos que acabar el proceso con una instrucción kill

La sintaxis para el ciclo while es:

while [condición]
do
    comandos
done

For

El ciclo for en Unix (y Linux) es un poco diferente al normal de los ciclos for.En este caso, la estra estructura de control permite repetir un número de instrucciones para un número de seleccionado de palabras o archivos. Al igual que el anterior se requiere tener cuidado de no caer en ciclos infinitos.

La sintaxis del ciclo for es: 

for palabra [in lista_de_palabras...]
    do
    comandos

done

Por ejemplo:

for archivo in *.c ; do wc -l $archivo ; done

En este ejmplo, se cuentan las líneas de todos los arhivos que terminan con .c y un ejemplo de la salida sería:

  15 g_sol.c
  59 m_sol00.c
 424 m_sol01.c
 377 m_sol02.c
 287 m_sol03.c

También puedes utilizar la instrucción repeat (sólo en csh)  que ejecuta un solo comando en repetidas ocasiones de acuerdo al parámetro conteo.

repeat conteo comando 

Ejemplo: 

@ veces = 500
repeat $veces echo "Debo poner atención en clase."

Cuya salida será la repetición de la frase "Debo poner atención en clase." 500 veces en la pantalla.



 
Advertisement