Documentos de Académico
Documentos de Profesional
Documentos de Cultura
For / for-in-done
while / while-do done
until / until-do done
continue y break
Sistemas Operativos
Integrantes:
Joel Arvalo
Andrs Ortiz
Carlos Chvez
Edwin Cabrera
Informacin:
Los bucles o loops en ingls, son una parte fundamental del control de flujo en cualquier
lenguaje de programacin. Estas construcciones nos permiten ejecutar la misma rutina
repetidamente, en base a una condicin de carrera2 o bien hasta el final de una secuencia o
de un flujo de entrada de datos.
En el bash scripting, hay tres estructuras que nos permiten realizar bucles, las cuales son:
while: Ejecutar la rutina mientras se cumpla una determinada condicin.
for: Ejecutar la rutina a lo largo de toda una secuencia o entrada, siendo cada elemento de
esta secuencia parte de la iteracin a travs de una variable.
until: Ejecutar la rutina hasta que se cumpla una determinada condicin.
Comando: for
Descripcin: Los bucles de tipo for recorren una secuencia de principio a n, si no se sale con un
break, e introducen en una variable el valor de la actual iteracin. Son tiles para recorrer
secuencias de nmeros, lneas de un fichero de texto, expresiones matemticas, etc...
Sintaxis:
for var in arg1 arg2 ... arg n
do
<comandos>
done
Los argumentos se van sustituyendo en var hasta que ya no quede argumentos
#!/bin/bash
for VAR in $(seq 1 20)
# para VAR de 1 a 20
do
#hacer
echo "Estoy en la iteracin nmero $VAR"
# decir "Estoy en la iteracin nmero VAR"
done
#hecho
echo "Programa finalizado." #decir "Programa finalizado."
Lazos y Bucles
Ejemplo 1:
Ejemplo 2:
lista="10 9 8 7 6 5 4 3 2 1"
for var in $lista
do
echo $var
done
Aqu est el script escrito en el vim
La salida sera:
Comando: While
Descripcin: Una estructura while se ejecutara mientras se cumpla una determinada condicin
de carrera. Es decir, que la condicin especificada debe ser verdadera para que el contenido
del bucle pueda ejecutarse. Supuestamente algo en dicho contenido producira variaciones en
la condicin de carrera hasta provocar que esta sea falsa, lo que producir la salida del bucle.
Tambin podra construirse un while infinito, por ejemplo con condicin de carrera, que
siempre ser verdadera, y podramos forzar la salida en algn momento con una instruccin
exit o break.
Sintaxis:
Lazos y Bucles
while condicion
do
<comandos>
done
Ejemplo:
#!/bin/bash
CONTADOR=1
while [ $CONTADOR -lt 10 ]
do
echo "El contador vale ${CONTADOR} y es menor que 10."
let CONTADOR++
done
Comando: until
Descripcin: Se ejecuta hasta que el cdigo de salida de comando sea hace cierto.
Sintxis:
until [condicin];
do
<comandos a ejecutar>
done
Ejemplo:
Lazos y Bucles
Realizar un script que crea un nmero de directorios ingresado por el usuario en el directorio
home del usuario.
Ls diferencia entre los dos ejemplos anteriores es que la sentencia break en el primer caso
har que se salga del ciclo for mientras que en el caso de continue ste impedir que se analice
el resto del ciclo actual, por lo tanto; no imprimir el ltimo valor.
Lazos y Bucles
for contador in 1 2 3 4 5
do
echo $contador
if [ $contador eq 3 ]
then
continue
fi
done
Lazos y Bucles