Exporter (0) Imprimer
Développer tout
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
Développer Réduire
Cet article a fait l'objet d'une traduction automatique. Déplacez votre pointeur sur les phrases de l'article pour voir la version originale de ce texte. Informations supplémentaires.
Traduction
Source

If

Effectue un traitement conditionnel dans les programmes de commandes.

Pour obtenir des exemples d'utilisation de cette commande, voir des exemples.

Syntaxe



Si [not] ERRORLEVEL <Number><Command>[else <Expression>] si [not] <String1> == <String2><Command>[else <Expression>] si [not] exist <FileName><Command>[else <Expression>]

Si les extensions de commandes sont activées, utilisez la syntaxe suivante :



Si [/i] <String1><CompareOp><String2><Command>[else <Expression>] Si cmdextversion <Number><Command>[else <Expression>] Si défini <Variable><Command>[else <Expression>]

Paramètres

Paramètre Description

pas

Spécifie que la commande doit être effectuée uniquement si la condition est fausse.

ERRORLEVEL <Number>

Spécifie une condition est vraie uniquement si le programme précédent exécuté par Cmd.exe a renvoyé un code de sortie égal ou supérieur au nombre.

<Command>

Spécifie la commande devant être effectués si la condition précédente est remplie.

<String1> == <String2>

Spécifie une condition est vraie uniquement si chaîne1 et chaîne2 sont identiques. Ces valeurs peuvent être des chaînes littérales ou des variables de traitement par lots (par exemple, % 1). Il est inutile encadrer des chaînes littérales entre guillemets.

existe <FileName>

Spécifie une condition vraie si le nom de fichier spécifié existe.

<CompareOp>

Spécifie un opérateur de comparaison de trois lettres. La liste suivante représente les valeurs valides pour OpComparaison:

EQU Est égal à

NEQ Non égal à

LSS Inférieur à

LEQ Inférieur ou égal à

GTR Supérieur à

GEQ Supérieur ou égal à

/i

Forces de chaîne des comparaisons pour ignorer la casse. Vous pouvez utiliser /i sur la chaîne1chaîne2 formulaire If==. Ces comparaisons sont génériques, dans la mesure où si chaîne1 et chaîne2 sont constitués de chiffres uniquement, les chaînes sont converties en nombres et une comparaison numérique est effectuée.

cmdextversion <Number>

Spécifie si condition est vraie uniquement le numéro de version interne associé avec les extensions de commandes fonction de Cmd.exe est égale à ou supérieur au nombre spécifié. La première version est 1. Il augmente par incréments de 1 lorsque des améliorations significatives sont ajoutées pour les extensions de commandes. Cmdextversion Cmdextversion conditionnelle n'est jamais vraie lorsque les extensions de commandes sont désactivées (par défaut, commande extensions sont activées).

défini <Variable>

Spécifie une condition est vraie si la Variable est définie.

<Expression>

Spécifie une ligne de commande et tous les paramètres à passer à la commande dans une clause else .

/?

Affiche l'aide à l'invite de commande.

Remarques

  • Si la condition spécifiée dans une clause if est true, la commande qui suit la condition est effectuée. Si la condition est fausse, la commande dans la clause if est ignorée et la commande exécute toute commande qui est spécifié dans la clause else .

  • Lorsqu'un programme s'arrête, elle renvoie un code de sortie. Pour utiliser des codes de sortie comme conditions, utilisez errorlevel.

  • Si vous utilisez défini, les trois variables suivantes sont ajoutées à l'environnement: %errorlevel%, %cmdcmdline%et %cmdextversion%.

    • %errorlevel% se développe en une chaîne représentant la valeur actuelle de la variable d'environnement ERRORLEVEL. Cela suppose qu'il y a pas une variable d'environnement existantes portant le nom ERRORLEVEL — s'il existe, vous obtenez plutôt cette valeur ERRORLEVEL.

    • %cmdcmdline% développe la ligne de commande d'origine qui a été passée à Cmd.exe avant un traitement quelconque par Cmd.exe. Cela suppose qu'il y a pas une variable d'environnement existantes portant le nom sa — s'il existe, vous obtiendrez la valeur de sa à la place.

    • %cmdextversion% se développe dans la représentation sous forme de chaîne de la valeur actuelle de cmdextversion. Cela suppose qu'il y a pas une variable d'environnement existantes portant le nom CMDEXTVERSION — s'il existe, vous obtenez plutôt sa valeur au lieu de cela.

  • Vous devez utiliser la clause else sur la même ligne que la commande après l'instruction Si.

Exemples

Pour afficher le message « Impossible de trouver le fichier de données » si le fichier produit.dat est introuvable, tapez :



if not exist produit.dat echo Impossible de trouver le fichier de données

Pour formater une disquette dans le lecteur a et afficher un message d'erreur si une erreur se produit pendant le processus de mise en forme, tapez les lignes suivantes dans un fichier de commandes :



: begin@echo offformat a: /sif pas errorlevel 1 goto endecho une erreur s'est produite lors de la mise en forme.

: endecho fin du programme de commandes.

Pour supprimer le fichier produit.dat à partir du répertoire en cours ou afficher un message si produit.dat est introuvable, tapez les lignes suivantes dans un fichier de commandes :



IF existe produit.dat (del produit.dat) ELSE (echo produit.dat le fichier est manquant.

)

Cc754335.note(fr-fr,WS.10).gif Remarque
Ces lignes peuvent être combinées en une seule ligne comme suit :



IF existe produit.dat (del produit.dat) ELSE (echo produit.dat le fichier est manquant).

En écho la valeur de la variable d'environnement ERRORLEVEL après l'exécution d'un fichier de commandes, tapez les lignes suivantes dans le fichier de commandes :



GoTo réponse %ERRORLEVEL%: answer1echo programme devait retourner 1:answer0echo code programme avait le code de retour 0goto fin : endecho fait !

Pour accéder à l'étiquette « okay » si la valeur de la variable d'environnement ERRORLEVEL est inférieur ou égal à 1, type :



Si % errorlevel % LEQ 1 goto okay

Références supplémentaires

Cela vous a-t-il été utile ?
(1500 caractères restants)
Merci pour vos suggestions.

Ajouts de la communauté

AJOUTER
Microsoft réalise une enquête en ligne pour recueillir votre opinion sur le site Web de MSDN. Si vous choisissez d’y participer, cette enquête en ligne vous sera présentée lorsque vous quitterez le site Web de MSDN.

Si vous souhaitez y participer,
Afficher:
© 2014 Microsoft