fbpx Certificação Linux: Comando for no Linux (loops de execução) [Guia Básico]

Blog

Comando for no Linux (loops de execução) [Guia Básico]

📅 01/01/2019 ⏱ 2 min ✍️ Uira Ribeiro
Linuxcomandos
Comando for no Linux (loops de execução) [Guia Básico]

O shell possui estruturas para testar condições e executar determinadas sequências de programas várias vezes (loop), até que a condição testada seja satisfeita.

Os três comandos que possibilitam isso são o for (até que), o while (enquanto for verdadeiro) e until (enquanto for falso).

O comando for no Linux permite que laços (loops) sejam feitos para que um ou mais comandos sejam executados até que uma determinada variável percorra todos os valores de uma dada lista. 

Veja um exemplo simples:

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

O mesmo comando pode ser escrito em uma só linha:

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

Veja o exemplo:

$ ls -1 > lista_arquivos.txt

Pode-se agora usar o for para executar diversos comandos para cada arquivo da lista:

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

Este laço atribui para a variável $i cada linha do arquivo lista_ar­quivos.txt.

A expressão $(comando) gera uma lista com resultado do comando. Tem o mesmo efeito que utilizar o comando entre crases: `comando`.

Em seguida ele executa os comandos para renomear e mover os arquivos até que a lista esteja completa.

Agora um exemplo um pouco mais complexo, com uso do for com 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

Nesta linha, o resultado do comando ls -1 é colocado na variável $i; Depois cada linha da variável $i é testada para saber se é um arquivo; se for verdadeiro, será exibida uma frase e, se for falso, outra frase.

Aprenda muito mais sobre Linux em nosso curso online. Você pode efetuar a matrícula aqui. Se você já tem uma conta, ou quer criar uma, basta entrar ou criar seu usuário aqui.

Gostou? Compartilhe

Uira Ribeiro

Prof. Uirá Ribeiro

Chair do Board do Linux Professional Institute

Especialista Linux com mais de 20 anos de experiência.
Autor de 5 livros e mentor de mais de 14.000 alunos certificados.
20 certificações de alto nível, incluindo LPIC-3, CKA, RHCE e AWS Solutions Architect.

WhatsApp