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

Se

Realiza processamento condicional em programas em lotes.

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

Sintaxe



Se [not] ERRORLEVEL <Number><Command>[else <Expression>] se [não] <String1> = = <String2><Command>[else <Expression>] se [not] exist <FileName><Command>[else <Expression>]

Se as extensões de comando estiverem ativadas, use a seguinte sintaxe:



Se [/i] <String1><CompareOp><String2><Command>[else <Expression>] se cmdextversion <Number><Command>[else <Expression>] se definido <Variable><Command>[else <Expression>]

Parâmetros

Parâmetro Descrição

não

Especifica que o comando deve ser executado somente se a condição for falsa.

ERRORLEVEL <Number>

Especifica uma condição verdadeira somente se o programa executado anteriormente pelo Cmd. exe retornada um código de saída igual ou maior que o número.

<Command>

Especifica o comando deve ser executado se a condição anterior for atendida.

<String1> = = <String2>

Especifica uma condição verdadeira somente se String1 e String2 forem iguais. Esses valores podem ser seqüências de caracteres literais ou variáveis em lote (por exemplo, % 1). Não é necessário colocar entre aspas seqüências de caracteres literais.

Existem <FileName>

Especifica uma condição verdadeira se o nome de arquivo especificado existir.

<CompareOp>

Especifica um operador de comparação de três letras. A lista a seguir representa os valores válidos para Operador_de_comparação:

EQU Igual a

EQ Não é igual a

LSS Menor que

LEQ Menor ou igual a

GTR Maior que

GEQ Maior ou igual a

/i

Força seqüência comparações Ignorar maiúsculas e minúsculas. Você pode usar /i em seqüência1 =seqüência2 de if ==. Essas comparações são genéricas, que se String1 e String2 são formados por dígitos numéricos, as seqüências de caracteres são convertidas em números e executada uma comparação numérica.

cmdextversion <Number>

Especifica o número de versão interno associado com as extensões de comando recurso do cmd. exe é igual ou maior que o número especificado de uma só se condição verdadeira. A primeira versão é 1. Aumenta em incrementos de um quando melhoras significativas forem adicionadas às extensões de comandos. Cmdextversion Cmdextversion condicional nunca é verdadeira quando as extensões de comando estão desativadas (por padrão, as extensões são ativadas).

definidas <Variable>

Especifica uma condição verdadeira se a variável está definida.

<Expression>

Especifica uma linha de comando e quaisquer parâmetros a serem passados para o comando em uma cláusula else .

/?

Exibe a Ajuda no prompt de comando.

Comentários

  • Se a condição especificada em uma cláusula se for true, o comando seguinte a condição é executado. Se a condição for falsa, o comando na cláusula if será ignorado e o comando executa qualquer comando que é especificado na cláusula else .

  • Quando um programa pára, ele retorna um código de saída. Para usar códigos de saída como condições, use errorlevel.

  • Se você usar definido, as três variáveis a seguintes são adicionadas ao ambiente: % errorlevel %% cmdcmdline % % cmdcmdline % e % cmdextversion %.

    • % errorlevel % expande uma representação de seqüência de caracteres do valor atual da variável de ambiente ERRORLEVEL. Isso pressupõe que não é uma variável de ambiente com o nome ERRORLEVEL — se houver, você receberá esse valor ERRORLEVEL em vez disso.

    • % cmdcmdline % expande-se a linha de comando original passada para cmd. exe antes para qualquer processamento pelo Cmd. exe. Isso pressupõe que não é uma variável de ambiente com o nome CMDCMDLINE — se houver, você obterá o valor CMDCMDLINE em vez disso.

    • % cmdextversion % expande a representação de seqüência de caracteres do valor atual de cmdextversion. Isso pressupõe que não é uma variável de ambiente com o nome CMDEXTVERSION — se houver, você obterá o valor CMDEXTVERSION em vez disso.

  • Você deve usar a cláusula else na mesma linha de comando após o caso.

Exemplos

Para exibir a mensagem "Não é possível localizar o arquivo de dados" se o arquivo não foi encontrado o produto. dat, digite:



Se não existir produto. dat echo Impossível localizar arquivo de dados

Para formatar um disco na unidade a e exibir uma mensagem de erro se ocorrer um erro durante o processo de formatação, digite as seguintes linhas em um arquivo em lotes:



: begin@echo offformat r: /sif não o errorlevel 1 goto endecho Ocorreu um erro durante a formatação.

: endecho final do programa em lotes.

Para excluir o arquivo Product. dat do diretório atual ou exibir uma mensagem se o produto. dat não for encontrado, digite as seguintes linhas em um arquivo em lotes:



Produto. se existe DAT produto. (del DAT) ELSE (echo o produto. dat arquivo está faltando.

)

Cc754335.note(pt-br,WS.10).gif Observação
Essas linhas podem ser combinadas em uma única linha da seguinte maneira:



Produto. se existe DAT produto. (del DAT) ELSE (echo o produto. dat arquivo está ausente).

Para repetir o valor da variável de ambiente ERRORLEVEL depois de executar um arquivo em lotes, digite as seguintes linhas no arquivo de lote:



GoTo resposta % errorlevel %: answer1echo programa tinha retornar código 1:answer0echo programa tinha código de retorno 0goto final: endecho feito!

Ir para o rótulo "OK" se o valor da variável de ambiente ERRORLEVEL é menor ou igual a 1, tipo:



Se % errorlevel % LEQ 1 goto correto

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

Contribuições da comunidade

ADICIONAR
A Microsoft está realizando uma pesquisa online para saber sua opinião sobre o site do MSDN. Se você optar por participar, a pesquisa online lhe será apresentada quando você sair do site do MSDN.

Deseja participar?
Mostrar:
© 2014 Microsoft