Sie sind auf Seite 1von 2

Ejemplo: tabla de multiplicar de un nmero

#!/bin/bash
X=1
echo Ingresa un nmero y presiona ENTER
read M
#El ciclo controla que X sea menor o igual a 10
while [ $X le 10 ]
do
#En R almacenamos la multiplicacin de X por M
R=$[X*M]
#Se imprime dicha multiplicacin en pantalla
echo $M * $X= $R
#Con let, incrementamos el valor de X en 1 unidad
let X=$X+1
done
2. For: almacena una lista de elementos en una variable, la cual ser usada para realizar
ciertas operaciones con cada ciclo.
for VARIABLE in ELEMENTOS
do
comandos
done
Ejemplo: programa que copia un archivo de una carpeta hacia otra, reemplazando un
archivo viejo.
#/bin/bash
#Establecemos directorios de origen y destino
ORIGEN=/home/usuario/Descargas
DESTINO=/home/usuario/Documentos
#Nos posicionamos en el de origen
cd $ORIGEN
#De todos los archivos, solo queremos aquel que se #llame ARCHIVO
for ARCHIVO in *
do
ARCH-DESTINO= $DESTINO/$ARCHIVO
# -f nos filtra los archivos regulares, ya que de
#nada nos sirven los directorios. nt nos filtra
#los archivos ms nuevos que aquellos
#encontrados en la carpeta destino
if [ -f $ARCHIVO ] && [ $ARCHIVO nt $ARCH-DESTINO ]; then
echo Copiando $ARCHIVO
#copiamos el archive con cp
cp $ARCHIVO $ARCH-DESTINO
fi
done
#Hacemos cd para salir de la carpeta de origen
cd

Otro ejemplo: script donde el usuario debe adivinar un nmero al azar generado por la computadora.
#/bin/bash
#Se genera un nmero aleatorio del 1 al 10, se lo #guarda en AZAR
AZAR=$[$RANDOM%10+1]
while [ 1 ]
do
echo n Ingrese un numero:
read NUM
#Compara si el nmero elegido por el usuario es #igual a AZAR; recordemos usar $ para evaluar los #valores
de las variables y no sus nombres
if [ $NUM eq $AZAR ]; then
echo Acertaste!
#break permite finalizar el ciclo while
break
#Si el nmero es menor a AZAR
elif [ $NUM gt $AZAR ]; then
echo Es menor
Sino, es ms grande que AZAR
else
echo ES mayor
fi
done

3. Until: bastante similar en estructura al While, except que el cdigo siempre se ejecuta mientras
la evaluacin de la condicin sea negativa, es decir, el programa sigue ejecutndose hasta que
sucede la condicin
until CONDICIN/COMANDO
do
comandos
done
Ejemplo: imprimir los nmeros del 10 al 20 en orden descendente
#!/bin/bash
CONT=20
#Mientras el contador sea menor que 10 (-lt, lower #than) se ejecuta el cdigo
until [ $CONT -lt 10 ]; do
echo CONTADOR $CONT
#A CONT se le resta una unidad
let CONT-=1
done

4. Select: este ltimo ciclo es un caso especial, ya que es usado generalmente para realizar menes
de forma rpida. Trabaja de forma similar al ciclo For.
select VARIABLE in LISTA
do
comandos
done

Das könnte Ihnen auch gefallen