Exportar (0) Imprimir
Expandir Tudo
Arp
At
Cd
Cls
Cmd
Del
Dir
Fc
For
Ftp
If
Ldp
Lpq
Lpr
Md
Mmc
Msg
Nlb
Rcp
Rd
Reg
Rem
Ren
Rsh
Rsm
Rss
Sc
Set
Sfc
Ver
Vol
Expandir Minimizar
Este artigo foi traduzido por máquina. Coloque o ponteiro do mouse sobre as frases do artigo para ver o texto original. Mais informações.
Tradução
Original

Para

Executa um comando especificado para cada arquivo em um conjunto de arquivos.

Para obter exemplos de como usar esse comando, consulte exemplos.

Sintaxe



Para {% % | %} <Variable>em (<Set>) <Command>[<CommandLineOptions>]

Parâmetros

Parâmetro Descrição

{% % | %} <Variable>

Obrigatório. Representa um parâmetro substituível. Use um único sinal de porcentagem (%)para executar o comando de prompt de comando. Use dois sinais de porcentagem (%) para executar o comando para dentro de um arquivo em lotes.%% Variáveis diferenciam maiúsculas de minúsculas e deve ser representados com um valor em ordem alfabética, como %A, %bou %c.

(<Set>)

Obrigatório. Especifica um ou mais arquivos, diretórios ou seqüências de texto ou um intervalo de valores no qual executar o comando. Os parênteses são necessários.

<Command>

Obrigatório. Especifica o comando que você deseja executar em cada arquivo, diretório ou seqüência de texto ou no intervalo de valores incluídos no conjunto.

<CommandLineOptions>

Especifica as opções de linha de comando que você deseja usar com o comando especificado.

/?

Exibe a Ajuda no prompt de comando.

Comentários

  • Usando Usando

    Você pode usar o comando for dentro de um arquivo em lotes ou diretamente no prompt de comando.

  • Usando parâmetros em lote

    Os seguintes atributos se aplicam ao comando para :

    • O comando for substitui %variável ou % %variável com cada seqüência de texto do conjunto até que o comando especificado processa todos os arquivos.

    • Nomes de variáveis diferenciam maiúsculas de minúsculas, global e não mais de 52 podem estar ativas ao mesmo tempo.

    • Para evitar confusão com os parâmetros de lote %0 a %9, você pode usar qualquer caractere de variável , exceto os numerais 0 a 9. Simples arquivos em lote, um único caractere, como % funcionará.

    • Você pode utilizar vários valores para variável em arquivos em lotes complexos para distinguir diferentes variáveis substituíveis.

  • Especificar um grupo de arquivos

    O parâmetro conjunto pode representar um único grupo de arquivos ou vários grupos de arquivos. Você pode usar caracteres curinga (* e ?) especificar um arquivo definido. São os seguintes conjuntos de arquivo válido:

    
    
    (*. doc) (*.doc *.txt * .me)(doc jan jan*.rpt feb*.doc RPT)(ar??1991.* ap??1991.*)
    
    
    Quando você usa o comando for , o primeiro valor do conjunto substitui %variável ou %variávele, em seguida, o comando especificado processa esse valor. Isso continua até que todos os arquivos (ou grupos de arquivos que correspondem ao valor definido ) são processados.

  • Usando as palavras-chave e fará

    No e do não são parâmetros, mas você deve usá-los com para. Se qualquer uma dessas palavras-chave for omitida, será exibida uma mensagem de erro.

  • Usando formas adicionais para

    Se as extensões de comando estiverem ativadas (o que é o padrão), são suportados os seguintes formulários adicionais de para :

    • Somente pastas

      Se conjunto contiver caracteres curinga (* ou ?), o comando especificado será executado para cada diretório (em vez de um conjunto de arquivos em um diretório especificado) que corresponda ao conjunto.

      A sintaxe é:

      
      
      para /d {% % | %} <Variable>em (<Set>) <Command>[<CommandLineOptions>]
      
      
    • Recursiva

      Percorre a árvore de diretório raiz na unidade:caminho e executa a instrução for em cada pasta da árvore. Se nenhuma pasta for especificada após /r, a pasta atual é usada como o diretório raiz. Se Definir apenas um ponto (.), ele apenas enumerará a árvore de diretório.

      A sintaxe é:

      
      
      for /r [[<Drive>:] <Path>] {% % | %} <Variable>em (<Set>) <Command>[<CommandLineOptions>]
      
      
    • Iterando um intervalo de valores

      Utilize uma variável iterativa para definir o valor inicial (Start#) e, em seguida, etapa por meio de um intervalo definido de valores até que o valor excede o valor final definido (End#). /l executará a iteratividade comparando início# end#. Se Iniciar# é menor que o final# o comando será executado. Quando a variável iterativa ultrapassa o final#, o shell de comando sai do loop. Você também pode usar um negativo etapa# para percorrer um intervalo em valores decrescentes. Por exemplo, (1,1,5) gera a seqüência 1 2 3 4 5 e (5,-1,1) gera a seqüência 5 4 3 2 1.

      A sintaxe é:

      
      
      para /l {% % | %} <Variable>em (< Start # >, < etapa # > final < # >) <Command>[<CommandLineOptions>]
      
      
    • Iterando e Analisando arquivos

      Use a análise de arquivos para processar saída de comando, seqüências e conteúdo do arquivo. Use as variáveis iterativas para definir o conteúdo ou seqüências de caracteres que você deseja examinar e usar as várias opções de Palavras-chaveDeAnálise para modificar a análise. Use a opção de Palavras-chaveDeAnálise para especificar quais símbolos devem ser passados como variáveis iterativas. Observe que quando usado sem a opção de símbolo, /f examinará apenas o primeiro símbolo.

      Análise de arquivo consiste na leitura da saída, seqüência ou o conteúdo do arquivo e dividindo-a em linhas individuais de texto e analisando cada linha em zero ou mais símbolos. O loop for é então chamado com o valor da variável iterativo definido para o símbolo. Por padrão, /f passa o primeiro símbolo separado por espaço de cada linha de cada arquivo. Linhas em branco são ignoradas.

      As sintaxes são:

      
      
      for /f ["<ParsingKeywords>"] {% % | %} <Variable>em (<Set>) <Command>[<CommandLineOptions>] for /f ["Palavras-chaveDeAnálise"] {% % | %} <Variable>em ("<LiteralString>") <Command>[<CommandLineOptions>] for /f ["<ParsingKeywords>"] {% % | %} <Variable>em ('<Command> ') <Command>[<CommandLineOptions>]
      
      
      O argumento definido Especifica um ou mais nomes de arquivo. Cada arquivo é aberto, ler e processado antes de mover para o próximo arquivo no conjunto. Para substituir o comportamento de análise padrão, especifique Palavras-chaveDeAnálise. Isso é uma seqüência entre aspas que contém uma ou mais palavras-chave para especificar diferentes opções de análise.

      Se você usar a opção usebackq , utilize uma das seguintes sintaxes:

      
      
      for /f ["usebackq <ParsingKeywords>"] {% % | %} <Variable>em (<Set>) <Command>[<CommandLineOptions>] for /f ["usebackq <ParsingKeywords>"] {% % | %} <Variable>em ("<LiteralString>") <Command>[<CommandLineOptions>] for /f ["usebackq <ParsingKeywords>"] {% % | %} <Variable>em ('<Command> ') <Command>[<CommandLineOptions>]
      
      
      A tabela a seguir lista as palavras-chave de análise que podem ser usados para Palavras-chaveDeAnálise.

      Palavra-chave Descrição

      EOL = <c>

      Especifica um final de caracteres de linha (apenas um caractere).

      Ignorar = <N>

      Especifica o número de linhas para ignorar no início do arquivo.

      delims = <xxx>

      Especifica um conjunto de delimitador. Isso substitui o conjunto de delimitadores padrão de espaço e tabulação.

      tokens = < X, Y, M–N >

      Especifica quais tokens de cada linha devem ser passados para o loop for para cada iteração. Como resultado, os nomes de variáveis adicionais são alocados. MN Especifica um intervalo da ésimo MN N ésimo símbolo. Se o último caractere do tokens = string é um asterisco, uma variável adicional será alocada e ele receberá o texto restante na linha após o último símbolo é analisado.*

      usebackq

      Especifica para executar uma seqüência de caracteres entre aspas back como um comando e uma seqüência de caracteres entre aspas simples como um comando de seqüência de caracteres literal. Além disso, permite nomes de arquivo em conjunto para ser colocado entre aspas.

    • Substituição de variável

      A tabela abaixo lista sintaxe opcional (para qualquer variável I).

      Variável com modificador Descrição

      % ~ I

      Expande %i que remove as aspas delimitadoras ("").

      % ~ fI

      Expande %i para um nome de caminho totalmente qualificado.

      % ~ dI

      Expande %i para somente uma letra de unidade.

      % ~ pI

      Expande %i para somente um caminho.

      % ~ nI

      Expande %i para somente um nome de arquivo.

      % ~ xI

      Expande %i para somente uma extensão de nome de arquivo.

      % ~ sI

      Expande o caminho para conter somente nomes curtos.

      % ~ aI

      Expande %i para atributos do arquivo.

      % ~ tI

      Expande %i para a data e hora do arquivo.

      % ~ zI

      Expande %i para o tamanho do arquivo.

      % ~$ PATH: I

      Pesquisa as pastas listadas na variável de ambiente PATH e expande %i para o nome totalmente qualificado da primeira pasta encontrada. Se o nome da variável de ambiente não estiver definido ou o arquivo não for encontrado pela pesquisa, esse modificador será expandido para a seqüência vazia.

      A tabela a seguir lista as combinações de modificadores que você pode usar para obter resultados compostos.

      Variável com modificadores combinados Descrição

      % ~ dpI

      Expande %i para uma letra de unidade e caminho apenas.

      % ~ nxI

      Expande %i para um nome de arquivo e extensão apenas.

      % ~ fsI

      Expande %i para um nome de caminho completo com somente nomes curtos.

      % ~ dp$ PATH: I

      Pesquisa as pastas listadas na variável de ambiente PATH para %i e expande para a letra de unidade e caminho da primeira encontrada.

      % ~ ftzaI

      Expande %i para uma linha de saída é como dir.

      Nos exemplos acima, você pode substituir %i e PATH por outros valores válidos. Finaliza um válido para o nome de variável de % ~ sintaxe.

      Usando nomes de variáveis em maiúsculas como %i, você pode tornar seu código mais legível e evitar confusão com modificadores, que não diferenciam maiúsculas de minúsculas.

  • Analisar uma cadeia de caracteres

    Você pode usar o para /f análise lógica em uma seqüência imediata envolvendo o conjunto de aspas simples – por exemplo, ('conjunto'). Definir é tratado como uma única linha de entrada de um arquivo e, em seguida, ela é analisada.

  • Analisar saída

    Você pode usar o comando for /f para analisar a saída de um comando tornando-se uma seqüência de caracteres entre aspas back do de Definir entre parênteses. Ela é tratada como uma linha de comando passada para um cmd. exe filho. A saída será capturada na memória e analisada como se ele é um arquivo.

Exemplos

Para usar para um arquivo em lotes, use a seguinte sintaxe:



Para {% % | %} <Variable>em (<Set>) <Command>[<CommandLineOptions>]

Para exibir o conteúdo de todos os arquivos no diretório atual que têm a extensão. doc ou. txt usando a variável substituível %f, digite:



f em (*.doc *.txt) digite %f

No exemplo anterior, cada arquivo tem a extensão. doc ou. txt no diretório atual é substituído para a variável %f até o conteúdo de cada arquivo é exibido. Para usar este comando em um arquivo em lotes, substitua cada ocorrência de %f com %. Caso contrário, a variável será ignorada e uma mensagem de erro é exibida.

Para analisar um arquivo ignorando linhas comentadas, digite:



para /f "eol =;tokens = 2, 3 * delims =, "%i in (myfile. txt) @ echo %i %j %k

Esse comando analisa cada linha de MeuArquivo. txt. Ele ignora as linhas que começam com um ponto e vírgula e passa o segundo e terceiro símbolo de cada linha para o corpo de for (os tokens são delimitados por vírgulas ou espaços). O corpo de instrução para referências %i para obter o segundo token, %j para obter o terceiro token e %k para obter todos os tokens restantes. Se os nomes de arquivo que você fornecer contiverem espaços, use aspas para delimitar o texto (por exemplo, "nome do arquivo"). Para usar aspas, você deve usar usebackq. Caso contrário, as aspas serão interpretadas como definindo uma seqüência literal para análise.

%i é declarado explicitamente na instrução for . %j e %k são implicitamente declarados usando tokens =. Você pode usar tokens = para especificar até 26 tokens, desde que não provoque uma tentativa de declarar uma variável maior que a letra "z" ou "Z".

O exemplo a seguir enumera os nomes de variáveis de ambiente no ambiente atual. Para analisar a saída de um comando colocando em conjunto entre parênteses, digite:



para /f "usebackq delims = =" %i in ('conjunto') @ echo %i

Referências adicionais

Isso foi útil para você?
(1500 caracteres restantes)
Agradecemos os seus comentários

Contribuições da comunidade

ADICIONAR
Mostrar:
© 2014 Microsoft