Windows 10 automatiseren met zelfgemaakte scripts

Door: dennis-gandasoebrata | 07 november 2019 13:48

How To

Zijn er veel taken in Windows die je regelmatig uitvoert? Ga aan de slag met eigen batch-scripts, waarmee je de taken automatisch kunt laten uitvoeren. Ze zijn al zo oud als MS-DOS, maar werken nog steeds in Windows. Ontdek hoe je een aantal eigen scripts schrijft om je computer als een pro te besturen.

Tip 01: Scripts

Je kunt scripts voor verschillende taken inzetten. In de meeste gevallen komen scripts goed van pas als je terugkerende taken hebt die je niet meer handmatig wilt uitvoeren. Denk hierbij aan het opvragen van computerinformatie of het opvragen van de inhoud van een map. Het maken van een script hoeft niet ingewikkeld te zijn, zoals je verderop in het artikel leest. Elke regel in een script draait een opdracht. Met de opdracht Pause kun je een script bijvoorbeeld laten pauzeren, wat handig is als je meerdere opdrachten achter elkaar in hetzelfde script wilt schrijven. Heb je – wellicht uit het verleden – ervaring met opdrachten in MS-DOS, dan heb je nu weer profijt van deze kennis. Met een script kun je nagenoeg alle opdrachten uitvoeren zoals je gewend was handmatig te doen. Populaire commando’s zoals Del, Cls en Ren zijn prima uitvoerbaar. Heb je nog geen kennis van deze opdrachten? Geen probleem: het is relatief eenvoudig om de benodigde basiskennis op te bouwen.

Tip 01 Scripts bevatten meerdere opdrachten, elk op een eigen regel.

Tip 02: Opbouw

Een script bestaat uit een aantal tekstregels, waarmee de computer wordt opgedragen bepaalde taken uit te voeren. Voor het maken van een script heb je niet veel nodig. Meer dan het ingebouwde Kladblok heb je niet nodig. Open het Startmenu, begin het woord Kladblok te tikken en open de gelijknamige app. Je kunt al snel een eenvoudig script maken, dat bijvoorbeeld een zin weergeeft. Typ het volgende:

@ECHO OFF

ECHO Dit is mijn eerste, zelfgeschreven script

PAUSE

Vervolgens bewaar je het bestand, waarbij het belangrijk is om de juiste extensie te gebruiken. Kies voor Bestand / Opslaan. Kies bij Opslaan als voor Alle bestanden. Geef een naam aan het bestand, met de extensie .bat. Bijvoorbeeld: Script.bat. Tijd om het script te testen. Sluit het Kladblok-bestand en dubbelklik op het bestand Script.bat. Een nieuw venster wordt geopend en het script toont de zin. Wanneer je op een willekeurige toets drukt, wordt het venster gesloten. Om het script op een later moment te bewerken, klik je erop met de rechtermuisknop en kies je voor Bewerken. Kladblok wordt geopend en je kunt de aanpassingen maken.

Tip 02 Een scriptbestand sla je op met de extensie .bat (van batch).

Veelgebruikte opdrachten

ECHO Kies voor ECHO OFF als je enkel op het scherm wilt tonen wat het resultaat van een bepaalde opdracht is (en de opdrachten zelf wilt verbergen). Kies je bijvoorbeeld voor een opdracht zoals ping tipsentrucs.nl en heb je daarvoor de opdracht ECHO OFF gebruikt, dan zal het venster alleen de uitkomst van de ping-opdracht tonen.

Gebruik er nog een apenstaartje bij (@ECHO OFF) om ook dat eerste commando ECHO OFF met de opdrachtprompt te verbergen.

CLS Het huidige venster van de Opdrachtprompt leegmaken (clear screen), zodat je begint met een schone lei. Deze opdracht is handig als je meerdere scripts achter elkaar draait en wilt dat er telkens met een leeg venster wordt begonnen.

TITLE: Wil je het venster van de Opdrachtprompt een eigen titel meegeven, gebruik dan deze opdracht, gevolgd door de titel. Bijvoorbeeld:

TITLE: Dit is mijn eigen script

PAUSE Hiermee onderbreek je de uitvoering van een script, waarna het later kan worden hervat.

:: Deze twee dubbele punten gebruik je om een opmerking in het document te plaatsen. Handig als je zelf meerdere scripts maakt en deze op een later moment nog wilt begrijpen. Ook handig als je het script met anderen deelt en toelichting wilt geven. Bijvoorbeeld:

:: Dit script controleert de werking van de computer

COPY Hiermee kopieer je een bestand of map naar een andere locatie. Bijvoorbeeld:

COPY Script.bat C:\Docs

EXIT Hiermee sluit je het venster van de Opdrachtprompt.

Tip 03: Bij problemen

Heb je netwerkproblemen, bijvoorbeeld omdat de internetverbinding wegvalt? Normaal gesproken draai je een opdracht zoals ipconfig /all om de status van de netwerkhardware te controleren. Of gebruik je een opdracht zoals ping om de bereikbaarheid van een systeem op het netwerk te controleren. Juist dergelijke opdrachten passen uitstekend in een script, omdat je ze na elkaar kunt uitvoeren. We kunnen het script als volgt opstellen:

@ECHO OFF

ipconfig /all

ping tipsentrucs.nl

tracert tipsentrucs.nl

PAUSE

Tip 03 Een script dat de gezondheid van het netwerk controleert.
Iedereen kan relatief snel eigen scriptjes schrijven

Tip 04: Opmerkingen

Vooral bij langere scripts is het handig (en netjes) om af en toe een opmerking in het script te plaatsen. Zo weet je later wat de functie van een script is, maar kunnen ook andere gebruikers werken met je scripts. De opmerking geeft immers uitleg over wat er gebeurt in het script. Een opmerking wordt nooit ‘uitgevoerd’ door het script. Om een opmerking te plaatsen, typ je :: (tweemaal een dubbele punt achter elkaar, zonder spatie), gevolgd door een spatie en de eigenlijke opmerking. Op elke regel kan een opmerking staan. Zo ziet die regel eruit:

:: Dit script controleert de werking van de computer

Tip 04 Houd je scripts netjes en overzichtelijk door met opmerkingen te werken.

Tip 05: Tekstbestand

Soms genereert een script belangrijke informatie. Je kunt ervoor kiezen om de informatie op het scherm te tonen (zoals in tip 3), maar je kunt de informatie ook laten opslaan in een tekstbestand, zodat je het later op je gemak kunt terugkijken. Ook is dat handig als je informatie over langere tijd met elkaar wilt vergelijken. Bijvoorbeeld als je een script hebt geschreven dat de pingsnelheid van de internetverbinding controleert en je hetzelfde script na enige tijd opnieuw uitvoert. Je gebruikt hiervoor de tekens >>, gevolgd door een spatie en de naam van het tekstbestand waarnaar de informatie moet worden weggeschreven. Bijvoorbeeld:

ping tipsentrucs.nl >> registratie.txt

De resultaten van de pingopdracht naar tipsentrucs.nl worden bij het uitvoeren van het script weggeschreven naar het bestand Registratie.txt. Dit bestand kun je vervolgens bekijken met Kladblok.

Een bruikbaar script ziet er dan als volgt uit:

@ECHO OFF

:: Met dit script controleer ik of de internetverbinding goed werkt

ipconfig /all >> registratie.txt

ping tipsentrucs.nl >> registratie.txt

tracert tipsentrucs.nl >> registratie.txt

Sla het bestand op, bijvoorbeeld als Netwerkcontrole.bat en voer het uit. Wees geduldig: er verschijnt een venster van de Opdrachtprompt en de opdrachten worden uitgevoerd. Het venster wordt automatisch gesloten zodra alle opdrachten zijn uitgevoerd. Open hierna het bestand Registratie.txt: de uitkomsten van de controle zijn netjes gedocumenteerd.

Tip 05 Je kunt de uitkomsten van een script ook wegschrijven naar een tekstbestand.

PowerShell

In Windows 10 tref je naast de ‘klassieke’ Opdrachtprompt ook een andere opdrachtregel aan: PowerShell. Wat zijn de verschillen? PowerShell kun je beschouwen als het geavanceerde broertje van de Opdrachtprompt. Het onderdeel wordt voornamelijk gebruikt binnen organisaties door systeembeheerders die er onder meer beheertaken (van servers) mee kunnen uitvoeren. Je kunt er meer complexe scripts mee uitvoeren. De Opdrachtprompt is ouder dan PowerShell. De gemiddelde gebruiker hoeft geen gebruik te maken van PowerShell. Ook voor ons doel volstaat de Opdrachtprompt.

Tip 06: Overzicht

Nu we weten hoe we een script kunnen gebruiken om informatie weg te schrijven naar een tekstbestand, kunnen we deze tactiek ook gebruiken om handige overzichten te maken. Bijvoorbeeld als je wilt weten welke bestanden zich in een map bevinden. Met het volgende script maak je automatisch een inventarisatie van bestanden in de map D:\Tips en schrijf je deze informatie weg naar een bestand Overzicht.txt, dat in dezelfde map wordt geplaatst:

@ECHO OFF

:: Alle bestanden in de map Tips tonen in het tekstbestand Overzicht

dir "D:\Tips" >> D:\Tips\Overzicht.txt

ECHO De inventarisatie is gemaakt

PAUSE

Na afloop open je het bestand Overzicht.txt om de bestanden te zien.

Tip 06 Dit script controleert de inhoud van een map.
Met scripts kun je taken geautomatiseerd uitvoeren

Tip 07: Bij het opstarten

Helemaal interessant wordt het als je een script hebt dat telkens tijdens de start van Windows moet worden uitgevoerd. Eerst maken we een snelkoppeling naar het scriptbestand. Klik met de rechtermuisknop op het scriptbestand en kies Kopiëren naar / Bureaublad (snelkoppeling maken). Open hierna het bureaublad en controleer of de snelkoppeling aanwezig is. Klik erop met de rechtermuisknop en kies Knippen. Open het venster Uitvoeren (tip: gebruik de toetsencombinatie Windows-toets+R) en typ Shell:startup, gevolgd door een druk op Enter. De map Opstarten wordt geopend. Klik erin met de rechtermuisknop en kies Plakken. De snelkoppeling naar het scriptbestand is nu aanwezig in de map Opstarten. Sluit Windows af door in het Startmenu te kiezen voor Aan/uit / Opnieuw opstarten. Het script wordt voortaan automatisch bij elke start van Windows uitgevoerd. Om dit te beëindigen, verwijder je het bestand eenvoudigweg uit de map Opstarten.

Tip 07 Scripts in de map Opstarten worden automatisch uitgevoerd bij het starten van Windows.

Tip 08: Systeeminfo

Je kunt ook een scriptbestand schrijven als je meer informatie over de gebruikte computer wilt zien. Bijvoorbeeld van welk besturingssysteem gebruik wordt gemaakt, hoeveel geheugen de computer heeft en van welk netwerk gebruik wordt gemaakt. Het script komt er dan als volgt uit te zien:

@ECHO OFF

:: Met dit script haal je informatie op over de gebruikte computer

TITLE Informatie over deze computer

ECHO Even geduld terwijl wij informatie over de computer ophalen!

:: Stap 1: Welke Windows deze computer gebruikt

ECHO ============================

ECHO INFORMATIE OVER WINDOWS

ECHO ============================

systeminfo | findstr /c:"OS Name"

systeminfo | findstr /c:"OS Version"

systeminfo | findstr /c:"System Type"

:: Stap 2: Welke hardware deze computer gebruikt

ECHO ============================

ECHO INFORMATIE OVER DE HARDWARE

ECHO ============================

systeminfo | findstr /c:"Total Physical Memory"

wmic cpu get name

:: Stap 3: Welk netwerk deze computer gebruikt

ECHO ============================

ECHO INFORMATIE OVER HET NETWERK

ECHO ============================

ipconfig | findstr IPv4

ipconfig | findstr IPv6

PAUSE

Tip 08 Informatie over je computer in één oogopslag.

Tip 09: Of naar bestand

Je kunt het script van tip 8 ook gebruiken om een tekstbestand te laten genereren met de informatie over de computer. Zoals je in tip 4 hebt gelezen, wordt hiervoor in het script de toevoeging >> bestandsnaam.txt gebruikt. Met deze kennis kun je het script verder uitbreiden. Hierna zie je het eerste deel van het script als voorbeeld:

@ECHO OFF

:: Met dit script haal je informatie op over de gebruikte computer

TITLE Informatie over deze computer

ECHO Even geduld terwijl wij informatie over de computer ophalen!

:: Stap 1: Welke Windows deze computer gebruikt

ECHO ============================

ECHO INFORMATIE OVER WINDOWS

ECHO ============================

systeminfo | findstr /c:"OS Name" >> Informatie.txt

systeminfo | findstr /c:"OS Version" >> Informatie.txt

systeminfo | findstr /c:"System Type" >> Informatie.txt

Tip 09 De computerinformatie overzichtelijk in een tekstbestand.

0 Reactie(s) op: Windows 10 automatiseren met zelfgemaakte scripts

  • Om te reageren moet je ingelogd zijn. Nog geen account? Registreer je dan en praat mee!
  • Er zijn nog geen reacties op dit artikel.

Wanneer je een reactie plaatst ga je akoord
met onze voorwaarden voor reacties.