Ja komandu vienības veiktspēju nosacījuma apstrāde partiju programmās.
Pieejamība
Komanda if ir iekšēja komanda, kurai piekļūst un ko izmanto pakešdatnēs.
- Windows 95
- Windows 98
- Windows NT
- Windows XP
- Windows 2000
- Windows Vista
- Windows 7
- Windows 8
- Windows 10
Sintakse
- Windows Vista un jaunāka sintakse.
- Windows XP un vecāka sintakse.
Windows Vista un jaunāka sintakse
IF [NOT] ERRORLEVEL numura komanda IF [NOT] string1 == string2 komanda IF [NOT] EXIST filename team
NAV | Norāda, ka Windows 2000 vai XP komanda jāveic tikai tad, ja nosacījums ir nepatiess. |
ERRORLEVEL numurs | Norāda patieso stāvokli, ja pēdējā programmas palaišana atdeva izejas kodu, kas vienāds ar vai lielāks par norādīto numuru. |
string1 == string2 | Norāda patieso nosacījumu, ja norādītās teksta virknes sakrīt. |
EXIST faila nosaukums | Norāda patieso stāvokli, ja norādītais faila nosaukums pastāv. |
komanda | Norāda komandu, kas jāveic, ja nosacījums ir izpildīts. Komandai var sekot ELSE komanda, kas izpildīs komandu aiz ELSE atslēgvārda, ja norādītais nosacījums ir FALSE. |
ELSE klauzulai jāparādās tajā pašā rindā kā komandai pēc IF. Piemēram:
Ja faila nosaukums pastāv. (del faila nosaukums.) ELSE (atbalss faila nosaukums. trūkst.)
Zemāk redzamais piemērs NEdarbosies, jo del komanda jāpabeidz ar jaunu rindu:
Ja faila nosaukums pastāv. del faila nosaukums. ELSE atbalss faila nosaukums. trūkst
Arī zemāk esošais piemērs nedarbosies, jo komandai ELSE jābūt vienā rindā ar IF komandas beigām:
Ja faila nosaukums pastāv. del faila nosaukums. ELSE atbalss faila nosaukums. trūkst
Tālāk sniegtais piemērs darbosies, ja vēlaties to visu vienā rindā:
Ja faila nosaukums pastāv. (del faila nosaukums.) ELSE atbalss faila nosaukums. trūkst
Ja komandu paplašinājumi ir iespējoti, IF mainās šādi:
IF [/ I] 1. virknes salīdzināšanas opcijas 2. komanda IF CMDEXTVERSION skaitļu komanda IF DEFINED mainīgā komanda
kur salīdzināšanas opcija var būt viena no šādām:
- EQU - vienāds
- NEQ - nav vienāds
- LSS - mazāk nekā
- LEQ - mazāks vai vienāds
- GTR - lielāks par
- GEQ - lielāks vai vienāds
un / I slēdzis, ja norādīts, saka veikt lielo un mazo burtu salīdzinājumu. / I slēdzi var izmantot arī IF formā string1 == string2. Šie salīdzinājumi ir vispārīgi, ja gan string1, gan string2 sastāv no visiem ciparu cipariem, tad tie tiek konvertēti skaitļos un tiek veikts skaitliskais salīdzinājums.
CMDEXTVERSION nosacītais darbojas tāpat kā ERRORLEVEL, izņemot to, ka tas tiek salīdzināts ar iekšējo versijas numuru, kas saistīts ar komandu paplašinājumiem. Pirmā versija ir 1. To palielinās par vienu, ja komandu paplašinājumiem tiks pievienoti ievērojami uzlabojumi. CMDEXTVERSION nosacījums nekad nav taisnība, ja komandu paplašinājumi ir atspējoti.
DEFINĒTS nosacījums darbojas tāpat kā EXISTS, izņemot to, ka tam ir vides mainīgā nosaukums un tas ir taisnība, ja vides mainīgais ir definēts.
% ERRORLEVEL% izvēršas par ERRORLEVEL pašreizējās vērtības virkni, ja vien vēl nav vides mainīgā ar nosaukumu ERRORLEVEL, un tādā gadījumā jūs iegūstat tā vērtību. Pēc programmas palaišanas zemāk sniegtais piemērs parāda ERRORLEVEL izmantošanu:
goto answer% ERRORLEVEL%: answer0 echo Programmai bija atgriešanās kods 0: answer1 echo Programmai bija atgriešanās kods 1
Varat arī izmantot skaitliskos salīdzinājumus:
IF% ERRORLEVEL% LEQ 1 ir labi
% CMDCMDLINE% izvēršas līdz komandrindai, kas nodota CMD.EXE pirms jebkādas apstrādes ar CMD.EXE, ja vien nav CMDCMDLINE vides mainīgā, un tādā gadījumā jūs iegūstat tā vērtību.
% CMDEXTVERSION% izvēršas CMDEXTVERSION vērtības virknē ar nosacījumu, ka vēl nav vides mainīgā ar nosaukumu CMDEXTVERSION, un tādā gadījumā jūs iegūstat tā vērtību.
Windows XP un vecāka sintakse
Veic nosacītu apstrādi pakešprogrammās.
IF [NOT] ERRORLEVEL numura komanda IF [NOT] string1 == string2 komanda IF [NOT] EXIST filename team
NAV | Norāda, ka operētājsistēmai Windows komanda jāizpilda tikai tad, ja nosacījums ir nepatiess. |
ERRORLEVEL numurs | Norāda patieso stāvokli, ja pēdējā programmas palaišana atdeva izejas kodu, kas vienāds ar vai lielāks par norādīto numuru. |
komanda | Norāda komandu, kas jāveic, ja nosacījums ir izpildīts. |
string1 == string2 | Norāda patieso nosacījumu, ja norādītās teksta virknes sakrīt. |
EXIST faila nosaukums | Norāda patieso stāvokli, ja norādītais faila nosaukums pastāv. |