Maak batchbestanden. Commando's die worden gebruikt in bat-bestanden. Commentaar op het batchbestand en de uitgifte ervan. Echo- en rem-opdrachten

Het gebruik van bat-bestanden (anders - "batchbestand", "batchbestand") kan uw werk vaak vergemakkelijken, bijvoorbeeld de installatie van software automatiseren volgens vooraf gedefinieerde parameters; synchronisatie van datum en tijd; het starten van opdrachtreeksen enzovoort. Om dergelijke scripts te gebruiken, moet u echter weten hoe u ze kunt maken. Bat-bestanden zijn in wezen een verzameling console-opdrachten, net zoals die op de opdrachtregel worden gebruikt.

Het artikel bespreekt drie methoden voor het maken van .bat-bestanden:

  1. De opdrachtregel gebruiken.
  2. Met behulp van het programma "Kladblok".
  3. Met behulp van het hulpprogramma "Dr. Batcher".

Stap 1. Gebruik het dialoogvenster "Programma's en bestanden zoeken" om de opdrachtregel in het menu "Start" te starten. U moet de cmd-zoekparameter instellen en met de linkermuisknop op het pictogram in het gedeelte "Programma's" klikken.

Stap 2. Het wordt aanbevolen om een ​​aparte map te gebruiken om de geschreven batchbestanden op te slaan, dus selecteer een locatie op uw harde schijf en maak een speciale map door het commando "MD D: \ Bat" in te voeren.

Op een nota! De opdracht wordt ingevoerd zonder aanhalingstekens, de spatie wordt pas na gebruik geplaatstMD. In het beschreven geval, een map met de naam « vleermuis "wordt op schijf gemaaktD. De opdrachtregel is niet hoofdlettergevoelig, dat wil zeggen, het resultaat van het uitvoeren van "MDD: \vleermuis ","mdD: \vleermuis "en"mdD: \Bat "zal hetzelfde zijn.

Stap 3. Maak het daadwerkelijke batchbestand met het commando "@echo off> D: \ Bat \ probnik.bat".

Op een nota! In dit geval is het geval belangrijk bij het opgeven van het locatiepad, dat wil zeggen de map "vleermuis ","vleermuis "en"BAT ”- drie onafhankelijke en totaal verschillende mappen. Als u naar een map verwijst die niet bestaat, wordt de opdracht niet uitgevoerd. Houd er rekening mee dat er ook geen foutmelding zal zijn.

Stap 4. Om de inhoud van een bestand te wijzigen, opent u de opslaglocatie, opent u het contextmenu en selecteert u de regel "Wijzigen".

Maak een batchbestand met Kladblok

Stap 1. Om Kladblok te starten, opent u het menu Alle programma's, het item Standaard en klikt u op het startpictogram.

Stap 2.

Leer hoe u een bestand kunt maken zonder veel programmeerkennis uit het nieuwe artikel -

Als voorbeeld raden we u aan de volgende code te gebruiken die de afbeelding van een ster weergeeft:

« @echo uit

modus con cols = 32 lijnen = 50

titel ster!

voor %% i in (

88888888888888881888888888888888,
,
,
,
,
,
,
,
,
,
,
,
,
,
,
,
,

) doe echo %% i

pauze> nul

Aandacht! De code moet zonder aanhalingstekens worden ingevoerd. Controleer altijd uw opdrachtsyntaxis. Als u vergeet een komma aan het einde van een regel te plaatsen, wordt deze tijdens de uitvoering van het programma samengevoegd met de volgende.

Stap 3. Sla het resulterende bestand op in de gewenste map. Om de resolutie te wijzigen, gebruikt u de regel "Bestandstype", selecteert u "Alle bestanden" erin en specificeert u na een punt "bat" wanneer u een naam invoert.

Een batchbestand maken met de "dr.slager "

Het opgegeven softwareproduct wordt betaald, maar biedt de mogelijkheid om de testversie 30 dagen te gebruiken.

Stap 1. Om een ​​bestand aan te maken, gebruikt u het menu "Bestand", het item "Nieuw ..." of de toetsencombinatie "Ctrl + N".

Stap 2. Vink in het dialoogvenster "Empty Batch File" aan en klik op "OK".

Stap 3. Specificeer welke opdrachten het bat-bestand moet uitvoeren.

Op een nota! Het rechterframe bevat toetscommando's die u kunt gebruiken bij het schrijven van code. Het volstaat om de gewenste te selecteren en op de knop te drukken "InvoegenCommand ", wat helpt om tijd te besparen tijdens het werken.

Stap 4. Sla het resulterende bestand op in de gewenste map.

Belangrijk! Houd er rekening mee dat het gespecificeerde hulpprogramma u in staat stelt om het programma on-the-fly te debuggen. Het volstaat om het menu te gebruiken “Batch "om een ​​reeds ingevoerde reeks te starten. De voortgang wordt weergegeven in het onderste frame. Bij gebruik van het item "uitvoereninexternVenster ... ”het batchbestand wordt uitgevoerd, vergelijkbaar met de lancering door middel van het besturingssysteem.

Gevolgtrekking

We hebben drie manieren beschreven om .bat-bestanden te maken. Twee van deze methoden zijn standaardmethoden die beschikbaar zijn bij Windows, voor één moet extra software worden geïnstalleerd. De evaluatie van elk van de methoden wordt weergegeven in de samenvattende tabel.

Informatie \ NaamOpdrachtregelNotitieboekjeDr. Batcher
VergunningLevering met WindowsLevering met WindowsBetaald
Russische taalAfhankelijk van de versie van WindowsAfhankelijk van de versie
Een batchbestand makenJaJaJa
Batchbestand bewerkenNietJaJa
Gemak van de interface (van 1 tot 5)4 4 5

Video - Bat-bestand maken

In dit artikel:

  • Variabelen definiëren
  • Opdrachtregelvariabelen (parameters voor het aanroepen van een bat-bestand)
  • IF-voorwaardeverklaring
  • Functies
  • Retourwaarden gebruiken (afsluitcode verwerken)

Variabelen definiëren

SET<Имяпеременной>=<Значениепеременной>

De SET-instructie is een uitbreiding van de opties die beschikbaar zijn voor het besturingssysteem. Het specificeert een variabele waarvan de waarde wordt vervangen door de naam wanneer die naam tussen procenttekens wordt gebruikt. Dus, indien gegeven (variabele vereist door veel games die een computergeluidskaart gebruiken):

SET BLASTER = A220 I5 D1 P330

dan bij gebruik van de volgende constructie in een batchbestand:

ECHO% BLASTER%

op het scherm verschijnt "A220 I5 D1 P330". Variabelen die met de SET-instructie zijn gedefinieerd, worden omgevingsvariabelen genoemd en zijn na uitvoering zichtbaar totdat DOS opnieuw wordt gestart (tenzij ze handmatig in het geheugen worden gewijzigd). Dat wil zeggen, het kan worden gebruikt vanuit het ene batchbestand of programma na een taak in een ander. De meest bekende is de PATH-variabele, een set paden om snel bestanden te vinden. Het wordt ingesteld in het bestand autoexec.bat.

Opdrachtregelvariabelen
(parameters voor het aanroepen van het bat-bestand)

%<цифра 0-9>

Zoals in elke taal, is het in de taal van batchbestanden mogelijk om variabelen te gebruiken die zijn ontvangen als parameters van een bat-bestand.

Er kunnen 10 gelijktijdig bestaande onafhankelijke variabelen zijn. Dit is niet genoeg voor het schrijven van complexe programma's, hoewel 3-4 vaak genoeg zijn voor normaal werk. De waarde van de variabele is gelijk aan de waarde van de corresponderende parameter uit de opdrachtregel. De variabele% 0 bevat de naam van het .bat-bestand en, als u dit hebt opgegeven, het pad ernaartoe. Dat wil zeggen, als u het bestand abc.bat uitvoert met de volgende parameters:

abc.bat en bc def

dan bevat de variabele% 0 de waarde abc.bat,% 1 bevat de waarde a,% 2 bevat bc en% 3 bevat def. Deze eigenschap wordt veel gebruikt om generieke batchbestanden te maken bij repetitieve bewerkingen.

U kunt de SHIFT-opdracht gebruiken om meer dan 10 variabelen van de opdrachtregel te halen.

Met de opdracht SHIFT kunt u meer dan 10 opdrachtregelparameters gebruiken, maar eerdere parameters gaan dienovereenkomstig verloren. Met andere woorden, het SHIFT-commando verschuift alle variabele waarden één stap naar links. Dat wil zeggen, de variabele% 0 zal de waarde bevatten die eerder in de variabele% 1 zat en de variabele% 1 de waarde van de variabele% 2 vóór de dienst. Deze bewerking is echter onomkeerbaar, dat wil zeggen dat het onmogelijk is om de variabelen terug te schuiven.

IF-voorwaardeverklaring

Gelukkig ondersteunt de cmd.exe-shell op moderne Windows 2000 en later opdrachtblokken in vertakkingsconstructies, waardoor er geen getagde IF's meer nodig zijn. Opdrachtblokken staan ​​tussen haakjes. Het ziet er als volgt uit (imiteert de C / C ++ inspringstijl):

als voorwaarde (

Rem Commando's van de 'toen'-tak

Rem...

) anders (

Rem Commando's van de 'else'-tak

Rem...

Een concreet voorbeeld van gebruik:

@echo uit

stel BOUWMODUS =% 1 . in

if "% BUILDMODE%" == "" (

Echo FAIL: Argument is vereist ^ (- debug, --release ^)

Afsluiten / b 1

rem Verwijder alle koppeltekens uit het argument om de verwerking te vereenvoudigen

set BUILDMODE =% BUILDMODE: - =%

if "% BUILDMODE%" == "foutopsporing" (

Stel CCFLAGS = / Od / MDd / Z7 . in

) anders (

Stel CCFLAGS = / O2 / MD . in

Naar mijn mening is dit al heel goed mogelijk om mee te leven. Maar zoals altijd is het leven niet zo makkelijk als het lijkt. Er is één probleem. Variabelen die in blokken van toen en anders worden gebruikt, worden uitgebreid voordat de uitvoering van die blokken begint, en niet tijdens de uitvoering. In het bovenstaande voorbeeld levert dit geen problemen op, maar in het volgende wel:

if "% BUILDMODE%" == "foutopsporing" (

Echo INFO: Stel de omgevingsfoutopsporingsmodus in

Stel OPTFLAGS = / Od . in

Stel CCFLAGS =% OPTFLAGS% / MDd / Z7 in

) anders (

Echo-INFO: de modus voor omgevingsvrijgave instellen

Stel OPTFLAGS = / O2 . in

Stel CCFLAGS =% OPTFLAGS% / MD in

Het addertje onder het gras is dat in beide blokken de vervanging van de variabele OPTFLAGS zal plaatsvinden voordat deze wordt gewijzigd tijdens de uitvoering van dit blok. Dienovereenkomstig zal de waarde die OPTFLAGS had op het moment dat de uitvoering van dit if-blok begon, worden vervangen door CCFLAGS.

Dit probleem wordt opgelost door luie variabele expansie te gebruiken. Variabelen ingesloten in! ...! in plaats van% ...%, worden ze pas op het moment van direct gebruik uitgebreid naar hun waarden. Deze modus is standaard uitgeschakeld. U kunt het inschakelen door de / V: ON-schakelaar te gebruiken bij het aanroepen van cmd.exe, of door de opdracht te gebruiken:

in de tekst van het bat-bestand zelf. De tweede manier lijkt me handiger - het is niet erg cool om te eisen dat iemand je script uitvoert met een bepaalde parameter.

Dat gezegd hebbende, zou het vorige "verkeerde" voorbeeld als volgt kunnen worden gecorrigeerd:

setlocal ingeschakeldelayedexpansion

if "% BUILDMODE%" == "foutopsporing" (

Echo INFO: omgeving voor foutopsporing instellen

Stel OPTFLAGS = / Od . in

Stel CCFLAGS = OPTFLAGS in! / MDd / Z7

) anders (

Echo-INFO: omgeving voor vrijgavemodus instellen

Stel OPTFLAGS = / O2 . in

Stel CCFLAGS = OPTFLAGS in! / MD

Nu is het bijna een compleet als-dan-anders-blok. Bijna, want als je een haakje tegenkomt in een van de echo-opdrachten, dan moet je er met een ^ aan ontsnappen, anders raakt de parser in de war ...

Maar dit is in ieder geval veel beter dan de waanzinnige hoeveelheid labels en overgangen.

Functies

Is het mogelijk om een ​​functie in een bat-bestand te maken? Ja, dat kan. Bovendien is het soms zelfs nodig. Het is waar dat deze functies voorwaardelijk kunnen worden genoemd.

Er is een speciale syntaxis voor de oproepopdracht, waarmee u naar een label in hetzelfde bat-bestand kunt springen, waarbij u de plaats onthoudt van waaruit deze oproep is gedaan:

oproep: labelargumenten

De terugkeer van de functie wordt uitgevoerd door de opdracht:

exit / b [optionele retourcode]

De /b-schakelaar is hier erg belangrijk: zonder deze wordt de exit niet gemaakt vanuit de functie, maar vanuit het script in het algemeen.

Typ voor details op de opdrachtregel:

telefoongesprek /?

Uitgang /?

Interessant is dat de oproepopdracht met deze syntaxis recursieve aanroepen ondersteunt met het automatisch aanmaken van een nieuw frame voor variabele argumenten% 0-% 9. Dit kan soms handig zijn. Hier is een klassiek voorbeeld van recursieve factoriële berekening in opdrachttaal:

@echo uit

oproep: faculteit% 1

echo% RESULTAAT%

Uitgang

rem Functie voor het berekenen van de faculteitswaarde

rem Invoer:

rem% 1 Het getal waarvoor u de faculteit wilt berekenen

rem-uitgang:

rem% RESULTAAT% Factorische waarde

: faculteit

als% 1 == 0 (

RESULTAAT = 1 . instellen

afrit / b

als% 1 == 1 (

RESULTAAT = 1 . instellen

afrit / b

set / a PARAM =% 1 - 1

oproep: faculteit% PARAM%

set / a RESULTAAT =% 1 *% RESULTAAT%

uitgang / b

Voorbeeld werk:

> faculteit.bat 10

3628800

Retourwaarden gebruiken
(verwerking van programmabeëindigingscode)

Elk programma geeft na voltooiing van zijn werk zijn exit-code terug aan het besturingssysteem. Het wordt geaccepteerd om nul te retourneren bij succes, anders - een foutcode. Soms, of liever vaak, retourneert het programma "opzettelijk" een waarde die niet nul is, zodat het in het batchbestand mogelijk was om enkele details van zijn werk te "vinden". Het programma retourneert bijvoorbeeld de code van de ingedrukte toets en het bat-bestand voert er verschillende acties op uit.

Hoe kan een batchbestand de afsluitcode van een uitgevoerd programma achterhalen? Hiervoor is de sleutelvariabele ERRORLEVEL voorzien.

Een voorbeeld van een batchbestand met foutniveaus:

@ECHO UIT

REM Voer het programma prg1.exe uit

PRG1.EXE

REM Afsluitcode-analyse

INDIEN FOUTNIVEAU 2 GA NAAR FILENOFOUND

INDIEN FOUTNIVEAU 1 GA NAAR SCHRIJVERROR

INDIEN FOUTNIVEAU 0 GA NAAR EXITOK

GA ONEEXIT

: BESTAND NIET GEVONDEN

ECHO-fout! Bestand niet gevonden!

GA ONEEXIT

: SCHRIJFFOUT

ECHO Schrijffout!

GA ONEEXIT

: EXITOK

ECHO Het programma is succesvol afgesloten.

GA ONEEXIT

: ONEXIT

Houd er rekening mee dat de analyse van de voltooiingscode niet bij nul begint, maar bij de maximaal mogelijke waarde. Feit is dat zo'n controle betekent: "als het foutniveau groter is dan of gelijk is aan de waarde, dan ...". Dat wil zeggen, als we vanaf nul controleren, is elke waarde waar op de eerste regel, wat niet waar is.

Dit is de meest voorkomende fout in dit soort software.

In dit artikel bekijken we twee manieren om een ​​bat-bestand te maken: met Verkenner en met Kladblok. Dit is voldoende om nieuwe bat-bestanden te maken, maar laten we eerst beslissen waar ze voor zijn. Om het heel simpel te zeggen, het bat-bestand is nodig om een ​​set commando's te schrijven voor: Windows-opdrachtregel en voer ze vervolgens op elk moment uit zonder elke keer te typen. Over het algemeen ideaal voor luie en/of systeembeheerders. =)

Ik ga meteen aan de slag:

Methode één:. We creëren bat-bestand v" Ontdekkingsreiziger»

Ik zal meteen een reservering maken die je voor deze methode moet hebben weergave van bestandsextensie in "Explor" ingeschakeld... Dit is in veel gevallen handig en ik begrijp niet waarom deze functie standaard is uitgeschakeld in Windows.

De extensie wijzigen(wat staat er na de laatste punt) op .bat:

Nadat we op Enter hebben gedrukt, vraagt ​​Windows: "Na het wijzigen van de extensie is dit bestand mogelijk niet beschikbaar. Wil je veranderen? " Natuurlijk"! Dit is precies wat we proberen te bereiken: verander de .txt-extensie naar .bat:

Voila! We hebben een "batchbestand" ontvangen, d.w.z. een uitvoerbaar bestand waarin u opdrachten kunt invoeren die worden uitgevoerd wanneer het wordt gestart:

Methode twee. We creëren bat-bestand v" Kladblok»

Om een ​​bat-bestand te maken met " Kladblok", nodig hebben open "Kladblok"(of een willekeurig tekstbestand in Kladblok) en gebruik het menu " Bestand", Optie" ":

Het venster voor het opslaan van bestanden wordt geopend. Hierbij is het belangrijk om rekening te houden met 2 dingen:

  1. « Bestandstype"Moet worden weergegeven op Alle bestanden (*.*)
  2. « Bestandsnaam"Moet de extensie .bat . hebben

We kijken waar we opslaan (zodat we het later terug kunnen vinden) en drukken op de knop " Sparen»:

Totaal:

Elk van deze methoden is zinvol als u beheerdersrechten heeft. Maar de eerste vereist extra instellingen (die ik nog steeds aanbeveel om te wijzigen en toe te passen).

Nu is het tijd om te overwegen bat-commando's... Kortom, de commando's die in cmd zijn ingevoerd, worden hier gebruikt, maar er zijn er enkele die niet logisch zijn om in de opdrachtregel te gebruiken.

Een volledige lijst met bat-commando's krijgen

Om alle commando's te beschrijven, moet je een aantal artikelen schrijven, zodat je je niet overbelast, we zullen ons beperken tot één artikel en rekening houden met compacte informatie. Zoals u weet, zijn het bat-bestand en de cmd-opdrachten hetzelfde om er een lijst van te krijgen of. Voer het help-commando in, dat in het Engels is geschreven als help, en druk op Enter. Als resultaat zal de computer alle commando's met een korte beschrijving in de cmd-interface schrijven.

Na het bekijken van deze lijst, wil je meer in detail weten wat een specifiek bat-commando is. Laten we bijvoorbeeld het for-commando selecteren, om het te beschrijven, help voor of voor /? en klik op invoeren. Als resultaat krijgt u online hulp bij de opdracht, deze is omvangrijk, dus u moet een willekeurige toets meerdere keren indrukken om vertrouwd te raken met de volgende beschrijving. U kunt dus de syntaxis van een bepaald commando bestuderen.

Bat-bestand commando's

Laten we nu kennis maken met de commando's die in het batchbestand worden gebruikt, met een korte beschrijving. Ze zijn echter niet hoofdlettergevoelig. We hebben ze in hoofdletters vermeld om u te helpen bij de identificatie.

@ Alle uitgevoerde bat-commando's worden op het scherm weergegeven, om onnodige dingen te verwijderen, wordt een "hond" voor het commando geplaatst. Vaak gebruikt met @echo uit.
setStelt variabelen in. Bijvoorbeeld setper = c: \ windows hier wijzen we per pad toe. U kunt een omvangrijke waarde naar een variabele schrijven en deze in een script specificeren, waardoor de code compacter wordt. Als de inhoud verandert, hoeft u niet overal de waarden te wijzigen waar deze variabele wordt verstrekt.
:: Een van de twee methoden om commentaar te geven in een bat-bestand zonder deze regel op het scherm weer te geven.
: LABELWanneer u een dubbele punt aan een woord toevoegt, wordt er een label gemaakt waarmee u naar verschillende secties van het batchbestand kunt gaan. Het label kan een andere naam hebben, LABEL is een voorbeeld.
TELEFOONGESPREKBat-opdracht die het ene batchbestand in het andere oproept. Alle parameters beschreven in een van de bestanden kunnen naar elkaar worden overgedragen.
KEUZESelectie commando.
CLSWist de inhoud van de shell zoals weergegeven boven de CLS.
ECHOGeeft een bericht weer op het scherm. Bijvoorbeeld: "ECHO Hallo!" verschijnt "Hallo!" Als u @ECHO niet aan het begin van het batchbestand gebruikt, ziet u het pad naar het batbestand en twee berichten, wat overbodig is. U kunt een lege tekenreeks maken door ECHO te typen. met een punt aan het einde.
UITGANGBeëindigt het huidige batchscript.
GOTO LABELWordt gebruikt om naar een specifiek label te navigeren, in dit geval LABEL, en het script erna uit te voeren.
ALSNet als in de bat-programmeertalen, vertegenwoordigt het if-commando de vervulling van een voorwaarde, afhankelijk van welke het script het ene of het andere pad zal volgen. Zie de help voor de syntaxis.
voorEen cyclus die wordt gebruikt om de uitvoering van dezelfde acties te organiseren.
PAUZEAls u het resultaat van het script wilt zien, maar het is actief en het venster sluit snel, gebruik dan PAUZE. Hiermee kunt u het resultaat zien en het script voltooien door op een willekeurige knop te drukken.
REMDe tweede manier om commentaar te geven. In tegenstelling tot :: wordt op het scherm afgedrukt als er geen @ECHO off-constructie is.
VERSCHUIVINGWijzigt de positie van de batchparameters in het bat-bestand.
BEGINStart programma's, vensters, enz. Heeft veel attributen (zie help).

Dit is de basis van de bat-commando's. De syntaxis van sommige elementen is moeilijk voor beginners en vereist enige kennis. Alles bat-bestandsopdrachten hierboven beschreven, worden oppervlakkig bekeken om hun doel te achterhalen, en de volledige syntaxis is te vinden in de Windows Help.

Een batchbestand wordt op dezelfde manier gestart als een normaal uitvoerbaar programma zoals .COM of .EXE, d.w.z. hiervoor worden de bestandsnaam en, indien nodig, parameters opgegeven.

Voorbeeld voer het batchbestand START uit:

C: \> begin

De rol van batchbestanden is speciaal. Ze dienen om een ​​gemakkelijke gebruikersinteractie met applicatiesoftwaresystemen te organiseren. Een batchbestand bevat, in tegenstelling tot gewone uitvoerbare programma's, niet de machinecodes van de programma's, maar tekst die wordt geïnterpreteerd door de DOS-shell. Regels van deze tekst kunnen zijn:

DOS ingebouwde commando's;

Oproepen naar uitvoerbare programma's;
- oproepen naar andere batchbestanden;
- speciale commando's om de uitvoer naar het scherm te regelen;
- speciale commando's voor het organiseren van branches en loops;
- etiketten.

Al deze constructies, met uitzondering van labels, kunnen worden beschouwd als DOS-commando's.

DOS-batchbestanden kunnen worden gebruikt om niet-triviale ontsnappingsreeksen te maken.

Een belangrijke eigenschap van batchbestanden is de mogelijkheid om formele parameters in hun teksten in te stellen. Batchbestanden kunnen formele parameters gebruiken% 1 -% 9.

Overweeg de actie van speciale opdrachten waarmee u de interpretatie van opdrachtbestanden kunt regelen. Deze omvatten, zoals aangegeven, de,,,-opdrachten, evenals de EXIT-opdracht, die een speciale rol speelt bij recursieve (geneste) aanroep van batchbestanden.

GOTO commando stelt je in staat om de controle over te dragen aan het label en daardoor secties van het commandobestand opnieuw uit te voeren, of, omgekeerd, sommige secties te omzeilen (dit is logisch in combinatie met het IF branching-commando).

Voorbeeld. Laat het PR.BAT-batchbestand er als volgt uitzien:

Echo uit
: m1
echo Print bestand% 1
echo Druk op CTRL-C om te stoppen
kopie% 1 prn
pauze
ga naar m1

In dit voorbeeld bevat de tweede regel het label m1 (het labelteken is een dubbele punt aan het begin van de regel), en de laatste regel bevat het commando om naar dit label te springen. Vier commando's in het herhaalde gedeelte van het commandobestand worden gebruikt om verklarende berichten (ECHO-commando's) op het scherm weer te geven en het bestand naar de printer te kopiëren, waarvan de naam wordt vervangen door de formele parameter% 1. Het PAUSE-commando pauzeert de uitvoering zodat de gebruiker rond kan kijken en het werk kan onderbreken of hervatten.

Laten we zeggen dat de gebruiker het commando vanaf de terminal geeft:

A: \> pr document.doc

De cyclische uitvoering van het PR.BAT-bestand begint met de eigenlijke parameter DOCUM.DOC. Het ene na het andere exemplaar van dit tekstbestand wordt naar de drukker gestuurd, onderbroken door pauzes na elk volgend exemplaar. De gebruiker kan de uitvoering van dit batchbestand onderbreken door gelijktijdig op de CTRL-C-toetsen te drukken.

FOR Commando biedt circulaire uitvoering van DOS-commando's. In dit geval kunt u een formele parameter specificeren en een lijst met daadwerkelijke parameters (meestal bestandsnamen), die opeenvolgend worden vervangen in plaats van de formele parameter in de tekst van de opdracht die wordt uitgevoerd.

Stel dat het nodig is om de bestanden PROG.PAS PROG.OBJ en PROG.EXE systematisch te kopiëren van de werkdirectory naar de virtuele schijf E :. Hiertoe kunt u de opdracht in het daarvoor bestemde opdrachtbestand geven:

Voor %% A in (PAS OBJ EXE) kopieert u PROG.%% A e:

Hier wordt de formele parameter %% A sequentieel vergeleken met de lijst met actuele parameters tussen haakjes en wordt gebruikt in het COPY-commando, dat in dit geval 3 keer achter elkaar wordt geactiveerd.

Door een andere formele parameter% 1 te vervangen als het tweede argument van het COPY-commando in plaats van de naam E:, kunt u de kopieerbestemming wijzigen door deze vanaf de terminal op te geven.

Alleen in batchbestanden mogen twee opeenvolgende%-tekens voorafgaan aan de formele parameter. Wanneer u het FOR-commando rechtstreeks vanaf een terminal gebruikt, wordt een enkel% teken gebruikt.