ID.nl logo
Doe het met tekst: beheer je computer met PowerShell
© fatmawati - stock.adobe.com
Huis

Doe het met tekst: beheer je computer met PowerShell

Iedereen heeft ongetwijfeld het Windows-onderdeel PowerShell weleens gezien, maar lang niet iedereen gebruikt het. Wat kun je er eigenlijk mee? In dit artikel praten we je bij.

Als je dit artikel gelezen hebt, weet je alles over PowerShell. We behandelen onder meer:

  • Actieve processen opvragen, bewaren en vergelijken
  • Logboeken uitlezen
  • Map met onderliggende mappen naar andere locatie kopiëren of verplaatsen
  • Inhoud van een map verwijderen

Ook interessant: 15 handige commando's in Windows Opdrachtprompt

Microsoft biedt met de tool PowerShell al jaren een veelzijdigere manier om het systeem door middel van getypte opdrachten te beheren. PowerShell pakt de zaken weer heel anders aan en biedt ook andere mogelijkheden.  

Geschiedenis

De eerste versie van PowerShell dateert al uit 2006 en is ontwikkeld vanuit de behoefte om een gereedschap voor beheer en automatisering te bieden met meer mogelijkheden dan de Opdrachtprompt. Die laatste was immers nog gebaseerd op het aloude MS-DOS en kent daarom geen functies die betrekking hebben op de vele aanvullende mogelijkheden van een grafisch besturingssysteem.

Al sinds Windows 7 wordt PowerShell meegeleverd en vanwege het algemene karakter van het product zijn er ook versies voor macOS en verschillende Linux-distributies.

Sinds zijn ontstaan is PowerShell nog volop doorontwikkeld en inmiddels zit het op versie 7.3.

Windows-licenties koop je bij Bol.com

Upgraden naar Windows 11, of van Home naar Pro?

Eerste blik

Wie slechts incidenteel gebruikmaakt van de Opdrachtprompt en nooit eerder aandacht heeft geschonken aan PowerShell, zal het idee hebben in een vertrouwde omgeving terecht te komen. Om de tool te starten, klik je met rechts op de startknop en open je Windows PowerShell.

Net als bij de Opdrachtprompt begin je in een map – in dit geval die van de ingelogde gebruiker – en het enige wat afwijkt, is de blauwe achtergrondkleur en de letters PS voor de mapnaam om aan te duiden dat je je in PowerShell bevindt. Iets wat de venstertitel natuurlijk ook al verraadt.

Probeer je het vertrouwde commando dir, dan ziet ook de uitvoering daarvan er best vertrouwd uit. Oké, de volgorde van de kolommen is wat anders en PowerShell toont standaard de bestandsattributen, maar op het eerste gezicht lijkt het op de Opdrachtprompt. Schijn bedriegt echter. Dat merk je wanneer je probeert de weergave van een map met veel bestanden na elk scherm te pauzeren met de vertrouwde opdracht dir /p. In plaats van het gewenste resultaat zie je nu een foutmelding. Help!

Voor wie de Opdrachtprompt kent, lijkt PowerShell vertrouwd, maar schijn bedriegt. (Klik op de afbeelding voor een betere resolutie.)

Help!

Waar de Opdrachtprompt bij de opdracht help een lijst met beschikbare commando’s toont, geeft PowerShell je een tamelijk algemeen verhaal. Vraag je specifiek hulp voor een enkel commando, bijvoorbeeld met help dir, dan krijg je een tekst te zien over iets dat Get-ChildItem heet. Hoe zit dat?

PowerShell kent een groot aantal opdrachten die cmdlets (lees: commandlets) worden genoemd. Voor zover deze overeenkomen met bekende functies in Opdrachtprompt zijn ze daarmee niet compatibel. Om toch een mate van vertrouwdheid te creëren, biedt PowerShell een systeem van aliassen. Daarin kan een commando onder meerdere namen beschikbaar zijn.

In ons voorbeeld zie je dat dir een alias is voor Get-ChildItem, de cmdlet waarmee je inhoud van mappen kunt opvragen. Ook kun je zien dat hetzelfde commando door het leven gaat onder de aliassen gci en ls. Om een en ander nog verwarrender te maken, kun je ook nog zelf aliassen voor opdrachten toevoegen.

Voor alle duidelijkheid werken wij vanaf nu met de officiële namen van cmdlets.

PowerShell geeft zijn geheimen maar moeizaam prijs.

Hulp online

Dezelfde hulp die we krijgen bij help dir, krijgen we ook bij dit volledige commando:

Get-Help Get-ChildItem

Dat ziet er nog altijd niet al te informatief uit voor beginners. Dat komt omdat PowerShell standaard alleen een beknopte lokale helpfunctie biedt. Voegen we aan ons commando de parameter -Online toe, dan opent PowerShell onze browser en krijgen we wél de uitgebreide hulp die we mogen verwachten.

Wil je uitgebreidere hulp lokaal beschikbaar hebben, dan kun je het best PowerShell sluiten met het commando exit en opnieuw starten als Administrator. Vervolgens geef je de opdracht Update-Help.

Als de installatie klaar is, verschijnt de gevraagde hulp voortaan binnen het PowerShell-venster. Dat gebeurt overigens wel in losse segmenten. Om alles in één keer te zien, voeg je de parameter -full toe, en ben je alleen geïnteresseerd in gebruiksvoorbeelden dan is er -examples.

De online hulp is wél uitgebreid.

Met de toevoeging -examples geeft de helpfunctie alleen voorbeelden van gebruik.

Afwijkend

Dat Get-ChildItem de officiële naam is voor een opdracht die ook als dir kan worden aangeroepen, maakt al duidelijk dat het om een veel algemener soort commando gaat.

In ons eerste voorbeeld zag je de standaardweergave van de inhoud van een map. Net als bij het commando dir in Opdrachtprompt biedt Get-ChildItem allerlei manieren om de uitvoer te filteren met een jokerteken (*) of uit te breiden naar onderliggende mappen met de parameter -recurse.

Je kunt de cmdlet ook voor andere doeleinden gebruiken, bijvoorbeeld door rechtstreeks vanuit PowerShell een registersleutel uit te lezen. Geef als voorbeeld daarvan deze opdracht:

Get-ChildItem -Path HKLM:\HARDWARE

Het equivalent van dir in PowerShell kan ook registersleutels lezen.

Inhoudsopgave

We hebben nu een globaal idee van het verschil tussen PowerShell en Opdrachtprompt, en we weten hoe we hulp kunnen vragen. Maar hoe zit het eigenlijk met de opdrachten die we kunnen geven? Anders gezegd: welke cmdlets heeft PowerShell in huis?

Om daar achter te komen, gebruik je de opdracht Get-Command. Je krijgt dan een enorme lijst aan beschikbare opdrachten. Een deel van deze lijst wordt gevormd door aliassen en ook zie je naast de cmdlets een categorie die Function heet. Tussen cmdlets en functions zit een technisch onderscheid dat hier niet van belang is.

Uiteraard is het onmogelijk om de vele honderden opdrachten uit deze lijst te behandelen. We beperken ons dan ook tot een kleine selectie om je een beeld te geven van de kracht en veelzijdigheid.

De lijst met beschikbare opdrachten is enorm lang.

Veiligheid

Zelfs al begrijp je maar een fractie van de lijst met beschikbare opdrachten, dan heb je vast wel gezien dat ze heel krachtig zijn en betrekking hebben op elk onderdeel van je systeem. Waar je via de beschikbare commando’s in de Opdrachtprompt alleen algemene schade kunt aanrichten (zoals het formatteren van een schijf), kunnen opdrachten en zeker scripts in PowerShell al dan niet opzettelijk zeer subtiele problemen veroorzaken (denk aan hacks). Om die reden is er een veiligheidssysteem actief dat de mogelijkheden standaard beperkt.

Geef het commando Get-ExecutionPolicy. Je zou als antwoord Restricted moeten krijgen. Dit is het hoogste beveiligingsniveau waarin je alleen losse commando’s kunt geven en geen scripts kunt uitvoeren. Dit beveiligingsniveau kun je alleen wijzigen wanneer je PowerShell als Administrator uitvoert. Wijzigen doe je met Set-ExecutionPolicy waarbij je vier veiligheidsniveaus hebt, zie ook deze opdracht:

Get-Help Set-ExecutionPolicy -full

Informatie

PowerShell biedt verschillende opdrachten die een alternatief vormen voor functies die je doorgaans via Windows zou gebruiken. Neem bijvoorbeeld het opvragen van een lijst met actieve processen waarvoor je anders Taakbeheer zou openen. In PowerShell kun je zo’n lijst opvragen met Get-Process.

Maar waarom zou je dat willen wanneer Taakbeheer voldoet? Taakbeheer geeft je een momentopname die je hooguit zou kunnen bewaren door een reeks schermafdrukken van het venster te maken. Vraag je zo’n lijst op in PowerShell, dan kun je hem ook bewaren en later vergelijken met een soortgelijke lijst die je op een ander moment maakt.

Geef deze opdracht:

Get-Process | convertto-html > processen-230427.htm

Hiermee maak je een lijst met alle processen inclusief alle beschikbare informatie daarover, converteer je die naar html en sla je hem op als bestand. Processen stoppen (pas op!) kan met Stop-Process en dan zal het je niet verrassen dat je ze ook kunt starten met Start-Process.

Op vergelijkbare wijze kun je bijvoorbeeld actieve en gestopte services achterhalen (Get-Service), logboeken van het systeem uitlezen (Get-EventLog) en meer. Uitvoer van dit soort opdrachten kun je bovendien op basis van allerlei criteria filteren met Where-Object.

Een lijst met actieve processen in PowerShell.

Dezelfde lijst met actieve processen maar nu geconverteerd naar een tabel in html.

Bestandsbeheer

Net als in Opdrachtprompt heb je in PowerShell de beschikking over opdrachten voor bestandsbeheer. De syntax vraagt vaak wat meer typewerk wanneer je de volledige vorm gebruikt, maar dat komt de begrijpelijkheid van instructies alleen maar ten goede. Vind je de opdrachten te lang, dan kun je altijd nog de aliassen opzoeken of zelf nieuwe maken.

Deze opdracht gebruik je om een map naar een andere locatie te kopiëren waarbij de toevoeging -Recurse ervoor zorgt dat ook onderliggende mappen worden verwerkt:

Copy-Item "C:\map1" -Destination "D:\map1" -Recurse

Vervang je het woord Copy door Move, dan verplaats je mappen en bestanden. Uiteraard is er ook de mogelijkheid om bestanden en mappen te verwijderen. Dat doe je met Remove-Item. Hernoemen gebeurt door middel van Rename-Item.

Tot slot kun je met Clear-Item de inhoud van een object verwijderen maar het object zelf bewaren. Denk bijvoorbeeld aan de inhoud van een map.

Stapje verder

Het feit dat je in al deze namen van cmdlets het woord Item tegenkomt, geeft de indruk dat ze veelzijdiger zijn dan hun tegenhangers in de Opdrachtprompt en dat is ook zo. Zoals je ook al kon zien bij Get-ChildItem, hebben opdrachten zoals Copy-Item een breder bereik dan alleen bestanden en mappen en zou je deze opdracht ook kunnen gebruiken om bijvoorbeeld registersleutels te kopiëren.

De PowerShell-opdrachten werken niet alleen op een lokale computer, maar ook op een andere machine in het netwerk. Dat maakt ze ideaal voor systeembeheerders (en thuisgebruikers met een bescheiden lokaal netwerk) om vanaf een centrale locatie aanpassingen op alle machines te doen via één script.

Scripts

Zoals we al zeiden in de paragraaf ‘Veiligheid’ kun je standaard alleen losse commando’s geven binnen PowerShell. Tussen de vele beschikbare opdrachten zitten ook instructies die programmeurs herkennen als lus-opdracht, bijvoorbeeld ForEach-Object, waarmee je dezelfde reeks commando’s op een heleboel objecten kunt loslaten. De typische plek waar je dat doet is binnen een script, de tegenhanger van het batch-bestand bij de Opdrachtprompt.

Vanwege hun kracht kennen scripts, net als gewone programma’s (exe-bestanden) een systeem van certificaten, zodat je zeker kunt weten of een script uit een betrouwbare bron komt.

Het zal duidelijk zijn dat PowerShell vooral bedoeld is voor (zeer) ervaren computergebruikers. Ook zul je begrijpen dat het veel meer studiemateriaal vereist dan dit artikel kan bieden. Dé plek om je studie te vervolgen is de online documentatie van Microsoft en de website PowerShell Gallery.

In de PowerShell-documentatie en Gallery vind je veel lesmateriaal, voorbeeldscripts en meer.

▼ Volgende artikel
Waar voor je geld: 5 krachtige powerbanks voor lange reizen
© ([None] (Photographer) - [None]
Huis

Waar voor je geld: 5 krachtige powerbanks voor lange reizen

In onze rubriek Waar voor je geld helpen we je de slimste keuze te maken. Daarom gaan we een paar keer per week op zoek naar inteessante producten voor een prima prijsje. Dit keer kijken we naar powerbanks met een flinke accucapaciteit die geschikt zijn voor lange(re) reizen en meerdere apparaten tegelijk kunnen opladen.

Met een losse powerbank kun je al je mobiele apparaten op- of bijladen als je onderweg bent en geen andere usb-laders in de buurt hebt. Gelukkig komt dat steeds minder vaak voor, want bijna iedere auto, de meeste moderne treinen en vliegtuigen en ook bussne hebben vaak al een usb-aansluiting bij de stoelen zitten. Toch kan het voor sommige reizen handig zijn om extra stroom mee te kunnen nemen. Wij vonden een aantal mooie modellen voor je.

Mophie Powerstation Pro

Deze oplader beschikt over een USB-C poort die tot 45 W kan leveren via Power Delivery en twee USB-A poorten voor overige apparatuur. In totaal heb je dus vier uitgangen tot je beschikking. De interne batterij heeft een capaciteit van 20.000 mAh. Hiermee kun je niet alleen je mobiele apparaten, maar ook je laptop een aanzienlijke gebruiksduurverlenging geven. De USB-C poort functioneert zowel als in- als uitgang, waardoor je de powerbank zelf ook weer vlot kunt opladen met een geschikte adapter. Die wordt zelf niet meegeleverd, maar wel de benodigde kabel.

Capaciteit: 20.000 mAh
Max vermogen: 45 W
Aantal apparaten: 3

Sandberg All-in-1 Laptop Powerbank 24000

De Sandberg All-in-1 Laptop Powerbank 24000 is een universele energiebron voor al je mobiele apparaten, zelfs je laptop of Macbook. Met zijn krachtige 24.000 mAh accu is er genoeg stroom om een smartphone meerdere keren op te laden of meerdere extra uren werk op de laptop. De powerbank is eenvoudig op te laden in enkele uren met de meegeleverde netadapter of een USB-C-lader. Met de DC-uitgang en 12 verschillende adapters in de verpakking, evenals een USB-snellaadpoort en twee USB-C-poorten, kunnen veel en verschillende soorten apparaten worden opgeladen op maximale snelheid. Als extra functie is er zelfs een ingebouwde draadloze snellader bovenop de powerbank.

Capaciteit: 24.000 mAh
Max vermogen: 84 W
Aantal apparaten: 5

Siltcon Powerbank 30.000 mAh

Deze powerbank valt op door de mogelijkheden. Naast verschillende usb-poorten voor het opladen van je smartphone, e-reader, draadloze oortjes of tablet is deze powerbank ook geschikt voor snelladen met 22,5 Watt, waardoor je telefoon binnen een uur weer helemaal vol is.. De accucapaciteit van 30.000 mAh is ruim voldoende om apparaten maar liefst zeven keer op te laden, maar uiteraard niet allemaal tegelijk. De powerbank werkt met alle Apple- en Android-toestellen en kan tot 5 apparaten tegelijk van stroom voorzien.

Capaciteit: 30.000 mAh
Max vermogen: 22,5 W
Aantal apparaten: 4

iMoshion Powerbank 30.000 mAh 22.5W

Als een zo hoog mogelijke capaciteit voor jou de belangrijkste factor is, dan kun je dit model overwegen. Deze powerbank heeft een interne batterij van maar liefst 30.000 mAh. Dit vertaalt zich naar de mogelijkheid om je apparaten gedurende een langere periode, bijvoorbeeld tijdens een lang weekend weg, van stroom te voorzien zonder de powerbank zelf te hoeven opladen. En extra handig: hij kan ook via zonne-energie worden opgeladen. Je hebt de beschikking over vier uitgangen: één USB-C poort en drie USB-A poorten. Dit maakt het een handige keuze als je nog veel apparaten hebt die de USB-A standaard gebruiken. De poorten ondersteunen verschillende snellaadprotocollen, waaronder Power Delivery en Quick Charge, met een maximaal gecombineerd vermogen van 22.5W. Een LED-display toont de exacte batterijstatus, zodat je altijd weet hoeveel energie er nog over is.

Capaciteit: 30.000 mAh
Max vermogen: 22,5 W
Aantal apparaten: 4

BlueBuilt Powerbank 20.000 mAh 45W

Deze powerbank is ontworpen als een allround oplaadoplossing voor moderne apparaten. Met een capaciteit van 20.000 mAh heb je voldoende stroom bij de hand om je dag door te komen. Het apparaat beschikt over een gebalanceerde set van vier poorten: twee USB-C poorten en twee USB-A poorten. Dit maakt het mogelijk om een brede variëteit aan apparaten gelijktijdig aan te sluiten. Beide USB-C poorten ondersteunen Power Delivery, waarbij één poort een vermogen tot 45W kan leveren. Dit is genoeg om naast je telefoon en tablet ook een kleinere laptop, zoals een MacBook Air, op te laden. De USB-A poorten zijn voorzien van Quick Charge, voor het versneld opladen van compatibele apparaten. De powerbank is uitgerust met een pass-through functie, wat inhoudt dat je de powerbank zelf kunt opladen terwijl deze tegelijkertijd andere apparaten van stroom voorziet.

Capaciteit: 20.000 mAh
Max vermogen: 45 W
Aantal apparaten: 4

▼ Volgende artikel
Nieuwe OPPO A6 Pro 5G: betaalbare smartphone met grote batterij en snel opladen
© OPPO
Huis

Nieuwe OPPO A6 Pro 5G: betaalbare smartphone met grote batterij en snel opladen

OPPO brengt met de A6 Pro 5G een nieuwe middenklasser naar Nederland die inzet op uithoudingsvermogen, duurzaamheid en een premium uitstraling. De smartphone heeft een 6.500 mAh-batterij, ondersteunt 80W SUPERVOOC-snelladen en biedt met IP69-bescherming en militaire schokbestendigheid een robuuste bouw voor dagelijks gebruik.

Krachtige batterij, snel weer vol

De OPPO A6 Pro 5G heeft een batterij van 6.500 mAh, opgebouwd uit grafietcellen met hoge energiedichtheid. Daarmee haalt de telefoon tot ruim 37 uur bellen of bijna 27 uur WhatsApp-gesprekken zonder opladen. Volgens OPPO behoudt de batterij na ruim 1.800 laadcycli – meer dan vijf jaar gebruik – nog steeds 80 procent van de oorspronkelijke capaciteit. Met 80W SUPERVOOC Flash Charge-technologie is de accu bovendien in 51 minuten weer volledig opgeladen.

Bestand tegen water, stof en stoten

De A6 Pro 5G heeft een IP69-certificering, wat betekent dat hij niet alleen volledig stofdicht is, maar ook bestand tegen krachtige waterstralen en onderdompeling. Binnenin beschermt een aluminiumlegering het moederbord tegenverbuigen en schokken, terwijl AGC DT-Star D+ glas de voorkant beschermt tegen krassen. De smartphone is daarnaast getest volgens militaire standaarden voor schokbestendigheid, waardoor hij tegen een stootje kan.

Vloeiend scherm en soepele prestaties

Het 6,7 inch AMOLED-scherm biedt een resolutie van 1080 x 2374 pixels en een verversingssnelheid van maximaal 120Hz. Met een piekhelderheid van 1.400 nits blijft het beeld goed zichtbaar, zelfs in fel zonlicht. OPPO's Trinity Engine en Luminous Rendering Engine – geïntegreerd in ColorOS 15 – zorgen voor een stabiele, vloeiende werking, ook bij multitasking en gamen.

©OPPO

Slimme verbindingen

De A6 Pro 5G beschikt over AI LinkBoost 3.0, een technologie die automatisch het sterkste netwerk kiest en overschakelt als de verbinding zwakker wordt. Tijdens het gamen herkent de telefoon prioriteitsverkeer en houdt de AI Game Antenna het signaal stabiel, zelfs als je het toestel horizontaal vasthoudt.

Licht, strak en modern

Met een dikte van 8 millimeter en een gewicht van 185 gram is de A6 Pro 5G opvallend slank voor een robuuste telefoon. Het scherm vult 93 procent van de voorkant en de metalen rand geeft het toestel een stevige, premium uitstraling. De smartphone is verkrijgbaar in twee kleuren: Lunar Titanium en Stellar Black.

Prijs en beschikbaarheid

De OPPO A6 Pro 5G (8GB/256GB) is per direct verkrijgbaar in Nederland voor 299 euro via de OPPO e-store en geselecteerde verkooppunten. Wie vóór 9 november bestelt, krijgt een set Enco Buds3 (ter waarde van 49 euro) gratis bij aankoop.

©OPPO

De OPPO A6 Pro 5G (8GB/256GB) in één oogopslag

🔋 Batterij en opladen

  • 6.500 mAh batterij – groter dan gemiddeld, goed voor meer dan een dag intensief gebruik.

  • 80W SUPERVOOC Flash Charge – volledig opladen in ongeveer 51 minuten.

  • Langdurige levensduur – behoudt meer dan 80% capaciteit na 1.830 laadcycli (≈ 5 jaar gebruik).

  • Tot 37 uur bellen of 19 uur video kijken op één lading.


💪 Duurzaamheid en bouwkwaliteit

  • IP69 water- en stofdicht – hoger dan de meeste smartphones in dit segment.

  • Schokbestendig volgens militaire standaard – getest op vallen, stoten en buigen.

  • AGC DT-Star D+ Crystal Shield Glass – extra sterk glas tegen krassen.

  • Behuizing met AM04-aluminiumlegering – kan tot 1.000 buigingen weerstaan.


🖥️ Scherm en prestaties

  • 120Hz AMOLED-scherm – hoge verversingssnelheid en vloeiende weergave.

  • Piekhelderheid van 1.400 nits – goed leesbaar in zonlicht.

  • Fijne resolutie (1080x2374) met 93% screen-to-body ratio.

  • Trinity Engine & Luminous Rendering Engine – optimaliseren snelheid, animaties en systeemstabiliteit (ColorOS 15).


🌐 Connectiviteit en gaming

  • AI LinkBoost 3.0 – wisselt slim tussen netwerken, versterkt signaal bij zwakke verbinding.

  • AI Game Antenna – voorkomt signaalverlies bij horizontaal gamen.

  • 5G-ondersteuning – stabiele verbinding en snelle downloads.


🧱 Ontwerp

  • Slank (8 mm) en licht (185 g).

  • Vierzijdig bezelontwerp met metalen frame.

  • Verkrijgbaar in twee kleuren: Lunar Titanium en Stellar Black.