MS-DOS un Windows komandrinda, ja komanda

Satura rādītājs:

MS-DOS un Windows komandrinda, ja komanda
MS-DOS un Windows komandrinda, ja komanda

Video: Microsoft Teams Keyboard Shortcuts - show keyboard shortcuts in microsoft teams 2024, Maijs

Video: Microsoft Teams Keyboard Shortcuts - show keyboard shortcuts in microsoft teams 2024, Maijs
Anonim

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.