Batchbestand

programmeertaal

Een batchbestand is een script: een computerbestand waarin een aantal computercommando's zijn geplaatst die na elkaar uitgevoerd worden.

Zowel het DOS- of Windows-platform voor pc als het z/OS-platform voor mainframe (JCL-scripts) kan batchbestanden laten uitvoeren. De term wordt ook wel gebruikt bij SQL-statements.

Een batchbestand bestaat uit een opeenvolging van commando's maar er zijn ook mogelijkheden om invoer van de gebruiker te vragen door middel van een eenvoudig keuzemenu, door invoer via een hulpbestand, of het onder voorwaarden uitvoeren van bepaalde commando's.

Als je CommandPrompt (CMD) opent, staat er:
1: "C:\Windows\system32>" (daar bevindt zich de opdrachtprompt)
OF
2: C:\Users\"Jouw Account">
Na de ">" kun je commands invoeren.

Codes voor een batchbestand

bewerken
exit  --> Sluit het batchbestand af.
pause --> Geeft het berichtje "press any key to continue."
echo  --> Typ hierachter je tekst, en het verschijnt op het scherm.
echo. --> Regel naar beneden.
cls   --> Ook wel "Clear Screen" genoemd. Maakt het scherm leeg (waarin het batchbestand wordt uitgevoerd)
rem   --> Typ je tekst, maar hij voert het niet in als code.
":"   --> Punt waardoor je de code vanaf daar laat beginnen, ook wel "label" genoemd (bv ":start") (zie Voorbeeld)
goto  --> Punt waar hij ziet dat hij moet zoeken naar de code ':' (zie Voorbeeld)
%variabele% --> Dat wat kan veranderen, met de goede inhoud ertussen (bv "C:\users\%username%\desktop")

Ook heb je codes die wat langer zijn:

copy  "directory" to "directory" (kopieert het bestand)
xcopy "directory" to "directory" (Kopieert bestanden en desgewenst de onderliggende directorystructuur naar een nieuwe plaats)
del   "directory" (verwijdert het bestand)
move  "directory" (verplaatst het bestand)

Daarnaast heb je instructies die de werking van een batchbestand laten afhangen van verschillende factoren.

Een "if-statement" is een voorbeeld van zo'n instructie.
Voorbeelden van "if-statements".

if (not) "variabele" == "waarde" (
    voer code uit
)
if (not) exist "bestand" (
    voer code uit
)

Ook zijn er "for-loops".
Voorbeelden van "for-loops".

for %%a in (1,1,10) do (       (deze loop laat de code 10 keer uitvoeren: begin bij 1, ga dan steeds 1 vooruit totdat je bij 10 bent)
    voer code uit
)

for /r c:\ /f %%a in (*.bat) do (     (deze loop noemt alle batchbestanden (*.bat) in de C schijf (c:\) )
    echo %%a                          (de "for" instructie hierboven slaat steeds de naam van een batchbestand op in de variabele "%%a")
)                                     (de "for" loop wordt herhaald en de variabele "%%a" wordt weer opnieuw bepaald)

Sommige ingewikkeldere commando's hebben zogenoemde "parameters". Dit zijn verschillende instructies binnen een batchcommando.

set a=10         (geeft de variabele "a" de waarde "10")
set /p a=         (deze parameter "/p" laat de waarde van "a" bepalen door de input van de gebruiker

Voorbeeld

bewerken

Dit is een rekenmachine (die geen kwadraten kan).

@echo off
:start
set /p MATH=Equation?
set /a RESULT=%MATH%
echo %RESULT%
pause
cls
goto start

Zie ook

bewerken