fbpx Comando for en Linux: Crear Bucles en Scripts Shell con Ejemplos | Certificação Linux

Comando for en Linux: Crear Bucles y Automatizar Tareas en Scripts

📅 01/01/2019 ⏱ 2 min ✍️ Uira Ribeiro
Linuxcomandos
Comando for en Linux: Crear Bucles y Automatizar Tareas en Scripts
Exam Pass App — mais de 7.000 questões LPI, offline, em 5 idiomas, disponível no Android e na App Store
Disponible en
Google Play
Disponible en
App Store

El shell posee estructuras para probar condiciones y ejecutar determinadas secuencias de programas varias veces (loop), hasta que la condición probada sea satisfecha.

Los tres comandos que lo posibilitan son el for (hasta que), el while (mientras sea verdadero) y until (mientras sea falso).

El comando for en Linux permite que se hagan bucles (loops) para que uno o más comandos se ejecuten hasta que una determinada variable recorra todos los valores de una lista dada. 

Vea un ejemplo simple:

$ for numero in um dois três quatro cincodoecho "Contando: $numero"done 
Contando: um
Contando: dois
Contando: três
Contando: quatro
Contando: cinco

El mismo comando puede escribirse en una sola línea:

$ for numero in um dois três quatro cinco; do echo "Contando: $numero"; done

Vea el ejemplo:

$ ls -1 > lista_arquivos.txt

Ahora se puede usar el for para ejecutar diversos comandos para cada archivo de la lista:

$ for i in $(cat lista_arquivos.txt); do cp $i $i.backup; mv $i.backup /tmp/backup; done;

Este bucle asigna a la variable $i cada línea del archivo lista_arquivos.txt.

La expresión $(comando) genera una lista con el resultado del comando. Tiene el mismo efecto que utilizar el comando entre comillas invertidas: `comando`.

A continuación, ejecuta los comandos para renombrar y mover los archivos hasta que la lista esté completa.

Ahora un ejemplo un poco más complejo, con uso del for con if:

$ for i in `ls -1`; do if test -f $i;  then echo “$i é um arquivo “; else echo “$i não é um arquivo”; fi ; done
Desktop não é um arquivoDocuments não é um arquivoDownloads não é um arquivoHR_PROFESSOR.sql é um arquivo

En esta línea, el resultado del comando ls -1 se coloca en la variable $i; Luego cada línea de la variable $i se prueba para saber si es un archivo; si es verdadero, se mostrará una frase y, si es falso, otra frase.

Aprenda mucho más sobre Linux en nuestro curso en línea. Puede realizar la inscripción aquí. Si ya tiene una cuenta, o quiere crear una, simplemente ingrese o cree su usuario aquí.

¿Le gustó? Comparta

Uira Ribeiro

Prof. Uirá Ribeiro

Chair do Board do Linux Professional Institute

Después de años viendo profesionales perder horas en tareas simples por no conocer las herramientas correctas de Linux, decidí enseñar.
Hoy soy autor de la mayoría de los Materiales de Aprendizaje oficiales de la LPI y mentor de más de 14,000 alumnos certificados.

Conoce mi historia completa →

Eso fue solo una pieza. El curso enseña el camino completo — desde tu primer comando hasta el día del examen.

Certificação Linux — a plataforma líder em certificações Linux no Brasil
WhatsApp