Batchbestanden zijn tekstbestanden met de extensie .BAT of .CMD die een reeks opdrachten bevatten en uitvoeren in de terminal van het besturingssysteem. Deze bestanden zijn handig om routinetaken in Windows te automatiseren.
Batchbestanden kunnen worden beschouwd als het Windows-alternatief voor Unix-shellscripts die je op een Linux-server zou uitvoeren.
In dit artikel leggen we stap voor stap uit hoe je .bat-bestanden maakt, configureert en uitvoert in Windows, en welke commando's je kunt gebruiken.
Een voordelige cloudserver van Hostman of een persoonlijke computer met Windows.
Kladblok of een andere teksteditor. We raden editors aan met ingebouwde syntaxisaccentuering, zoals Notepad++.
Open een teksteditor en voer de gewenste inhoud in.
Bijvoorbeeld, maak een batchbestand dat het bericht "Hello, user!" toont in de opdrachtprompt:
@echo off
echo Hello, user!
pause
Sla het bestand vervolgens op met de extensie .bat. Ga naar Bestand → Opslaan als...
Gebruik je Notepad++? Kies dan "Batchbestand" bij Bestandstype en geef een bestandsnaam op.
Gebruik je Kladblok? Kies dan "Alle bestanden" als bestandstype en voer naam en extensie in.
Heb je de verkeerde extensie gebruikt? Hernoem het bestand met de juiste extensie nadat je bestandsnaamextensies zichtbaar maakt via het tabblad Weergave in Verkenner.
Enkele basisregels voor het gebruik van batchbestanden in Windows:
Elke opdracht moet op een nieuwe regel staan.
De opdrachten die in het bestand zijn opgegeven, worden strikt in volgorde uitgevoerd, van boven naar beneden. Uitzondering hierop zijn gevallen waarin er binnen het bestand een sprong van het ene naar het andere deel is ingericht (bijvoorbeeld via het commando 'goto
').
Geef mappaden aan tussen aanhalingstekens om fouten te minimaliseren.
Voeg |Y|
toe voor commando's die om bevestiging vragen (zoals del
of format
).
Je kunt twee soorten commando’s gebruiken: interne (ingebouwde) en externe. De eerste zijn de commando’s van de opdrachtprompt zelf (cmd.exe). De tweede categorie omvat alle mogelijke uitvoerbare bestanden (met extensie .EXE, .CMD of .BAT).
Gebruik @echo off
aan het begin van het bestand om te voorkomen dat de opdrachtenregel wordt weergegeven tijdens de uitvoering van het batchbestand.
Dubbelklik op het bestand om het uit te voeren.
Sommige batchbestanden kunnen opdrachten bevatten die administratorrechten vereisen. Klik in dat geval met de rechtermuisknop op het bestand en kies "Als administrator uitvoeren".
Als het uitvoeren van het bestand systeemoutput genereert, moet je het via de opdrachtprompt uitvoeren:
Druk op WIN+R, typ "cmd
" in het invoerveld en druk op Enter. Er opent zich een opdrachtpromptvenster waarin je het batchbestand kunt slepen en vervolgens op Enter drukt.
Het batchbestand wordt uitgevoerd en toont het resultaat. Voer bijvoorbeeld het testbestand uit dat we eerder hebben gemaakt; je ziet dan het bericht: "Hello, user!"
Je kunt batchbestanden automatisch laten uitvoeren via de ingebouwde Taakplanner van Windows:
Druk op WIN+R, typ taskschd.msc
en druk op Enter.
Klik op "Basis-taak maken..." in het menu Acties.
Na deze stap verschijnt de wizard "Basis-taak maken", waarin je vier tabbladen moet invullen:
Basis-taak maken: Voer de naam en beschrijving van de taak in en klik op Volgende.
Trigger: Geef aan hoe vaak en op welk tijdstip het batchbestand moet worden uitgevoerd.
Actie: Selecteer "Een programma starten", klik op Volgende en geef het pad naar het batchbestand op.
Voltooien: Controleer alle ingevoerde gegevens en klik op Voltooien.
Het bestand wordt nu automatisch uitgevoerd volgens je planning.
Je kunt opmerkingen toevoegen in drie vormen:
rem. Plaats de opmerking er direct achter:
rem jouw_opmerking
Dubbele dubbelepunt (werkt net als rem):
:: jouw_opmerking
goto. Dit wordt niet alleen gebruikt voor opmerkingen, maar ook om naar een ander deel van het batchbestand te springen. Geef na de opdracht een label op (in het onderstaande voorbeeld is dat "start"):
goto start
jouw_opmerking
:start
Elke opmerking moet een uniek label hebben.
Below are the main commands used when writing a batch file.
Commando |
Argument |
Beschrijving |
cd |
Mapnaam |
Navigeert naar opgegeven map. |
pause |
- |
Pauzeert het script. |
start |
Pad/commando |
Start programma of bestand in apart venster. |
md |
Mapnaam |
Maakt map aan. |
copy |
Bron en doel |
Kopieert bestanden. |
del |
Bestandsnaam |
Verwijdert bestanden. |
call |
Bestandspad |
Roept ander batchbestand aan. |
title |
Titel |
Wijzigt venstertitel. |
move |
Bron en doel |
Verplaatst bestanden. |
color |
Kleurcode |
Wijzigt tekst/achtergrondkleur. |
exit |
- |
Beëindigt het script. |
Voor een volledige lijst: typ help
in de opdrachtprompt.
Je kunt ook variabelen gebruiken wanneer je een batchbestand schrijft.
Gebruik het commando "set" om een variabele toe te voegen. Typ eerst "set", gevolgd door de naam van de variabele, en vervolgens de waarde. Als je een variabele wilt aanroepen en de waarde wilt lezen, plaats je het %
-symbool aan beide zijden van de variabelenaam.
@echo off
set voorbeeld=Hello, user!
echo %voorbeeld%
pause
Let op: er mogen geen spaties vóór of na het gelijkteken staan, anders werkt het programma niet.
Wanneer je het batchbestand met deze inhoud uitvoert, geeft het systeem "Hello, user!" weer.
Gebruik bij het declareren van een variabele eventueel de /a
-vlag, waarmee je een getal aan de variabele kunt toewijzen:
@echo off
set /a voorbeeld=2*3
echo %voorbeeld%
pause
Zonder de vlag wordt de volledige tekenreeks na het gelijkteken als waarde aan de variabele toegekend. Wanneer het programma wordt uitgevoerd, geeft het het getal 6 weer.
Naast gewone variabelen zijn er ook argumentvariabelen. Deze krijgen waarden toegewezen die worden meegegeven wanneer het batchbestand wordt uitgevoerd. Ze zien er als volgt uit: %1
, %2
, %3
:
@echo off
@echo Eerste argument - : %1
@echo Tweede argument - : %2
@echo Derde argument - : %3
pause
Voer je het bestand uit met "Hello, user!" als invoer, dan worden deze waarden weergegeven.
Bij langdurig werken verzamel je vaak overbodige bestanden. Een batchbestand helpt ze op te schonen.
Voorbeeld: je wilt alle .TXT-bestanden uit een map en submappen verwijderen:
@echo off
del /f /s /q C:\pad\Voorbeeld\*.txt
Verklaring:
/f
verwijdert ook alleen-lezen bestanden./s
doorzoekt submappen./q
onderdrukt bevestigingen.Maak testomgeving:
mkdir Voorbeeld
cd Voorbeeld
mkdir Submap
notepad Voorbeeld1.txt
notepad Voorbeeld2.txt
notepad Voorbeeld3.txt
cd Submap
copy C:\pad\Voorbeeld\*.txt
Sleep het batchbestand naar het CMD-venster en bekijk de output: alle zes bestanden zijn verwijderd.
In deze handleiding hebben we uitgelegd hoe je .BAT-bestanden maakt en gebruikt in Windows, inclusief de belangrijkste commando's. Zo kun je direct starten met automatiseren.
Wil je verder leren? Bekijk dan onze handleiding over het maken van een cloudserver.