Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Para usar o comando FOR em um programa em lotes, especifique %%variável em vez de %variável. Diferenciam-se
maiúsculas de minúsculas nos nomes das variáveis, de forma que, por exemplo, %i ‚ diferente de %I.
Se as extensões de comando estiverem ativadas, haver suporte para os formatos adicionais do comando FOR
Se o conjunto contiver curingas, ele corresponderá aos nomes de pasta em vez de nomes de arquivo.
Orienta a árvore de diretórios com raiz na [unidade:]caminho, executando a instrução FOR em cada diretório da
árvore. Se não houver especificação de diretório após /R, o diretório atual será pressuposto.
Se o conjunto for apenas um único caractere de ponto (.), ele enumerará apenas a árvore de diretórios.
O conjunto ‚ uma sequência de números de início ao fim, por quantidade de incremento. Portanto, (1,1,5)
geraria a sequência 1 2 3 4 5 e (5,-1,1) geraria a sequência (5 4 3 2 1)
conjunto de nomes de arquivo ‚ um ou mais nomes de arquivos. Cada arquivo é aberto, lido e processado antes
de se passar para o próximo arquivo em conjunto de nomes de arquivo. O processamento consiste em ler o
arquivo, quebrá-lo em linhas individuais de texto e analisar cada linha para zero ou mais tokens. O corpo de
for loop é chamado em seguida com o conjunto de valores de variável para a(s) cadeia(s) de caracteres de
token encontrada(s). Por padrão, /F transfere o primeiro token separado por espaço de cada linha de cada
arquivo. As linhas em branco são ignoradas. É possível substituir o comportamento de análise padrão
especificando os parâmetros "opções" opcionais. Essa ‚ uma cadeia de caracteres entre aspas que contém uma ou
mais palavras-chave para especificar diferentes opções de análise. As palavras-chave são:
Analisaria cada linha em meu_arquivo.txt, ignorando linhas que começassem com um ponto-e-vírgula, passando o
segundo e terceiro token de cada linha para o corpo do comando for, com tokens delimitados por vírgulas e/ou
espaços. Observe que comandos dentro do corpo do for fazem referência a %i para obter o segundo token, %j
para obter o terceiro token e %k para obter todos os tokens restantes após o terceiro. No caso de nomes de
arquivos contendo espaços, é necessário colocá-los entre aspas. Para usar aspas dessa forma, também é
necessário usar a opção usebackq ou as aspas serão interpretadas como se estivessem definindo uma cadeia de
caracteres literal a ser analisada.
Também ‚ possível usar a lógica de análise de FOR /F em uma cadeia de caracteres imediata, ao transformar o
conjunto de arquivo dentro de parênteses em uma cadeia de caracteres entre aspas simples. A cadeia de
caracteres será tratada como uma única linha de entrada de um arquivo e será analisada.
Finalmente, é possível usar o comando FOR /F para analisar a saída de um comando. Para isso, transforme o
conjunto de arquivo dentro dos parênteses em uma cadeia de caracteres entre aspas simples. A cadeia de
caracteres será tratada como uma linha de comando, que será transferida para um CMD.EXE filho e a saída
será capturada na memória e analisada como se fosse um arquivo. Assim, o seguinte exemplo:
Se o nome da variável de ambiente não estiver definido ou o arquivo não for encontrado pela pesquisa, esse
modificador expandirá para a cadeia de caracteres vazia
Nos exemplos acima, %I e PATH podem ser substituídos por outros valores válidos. A sintaxe %~ é terminada por
um nome de variável FOR válido.
O uso de nomes de variáveis em maiúsculas como %I facilita a leitura e evita confusão com os modificadores,
que não fazem diferenciação entre maiúsculas e minúsculas.