ID.nl logo
Aan de slag met Windows Powershell
© PXimport
Huis

Aan de slag met Windows Powershell

Misschien heb je wel eens van Windows PowerShell gehoord of het gebruikt, maar ook als er geen belletje rinkelt, is dat niet heel verwonderlijk. Met Windows PowerShell kun je complexe handelingen op de computer met commando's eenvoudiger maken. Wat is het, en hoe je kun je het beginnen te gebruiken?

Windows is een grafisch besturingssysteem waar je met de muis activiteiten start en stuurt. Om de interface mooi en opgeruimd te houden, is maar een beperkt aantal functies direct toegankelijk, voor andere moet u diep in het systeem duiken en vaak veel handelingen verrichten. Hetzelfde resultaat, maar dan sneller en gemakkelijker is te bereiken via PowerShell. PowerShell is de command-line-interface van Windows waar je tekstopdrachten aan het besturingssysteem geeft. Lees ook: 80 Tips voor Windows 8.

Nu denken velen als het woord PowerShell valt, dat het heel snel heel moeilijk wordt. Dat hoeft echter helemaal niet. Ook voor dagelijks gebruik heeft PowerShell voldoende te bieden. Iets wat bijvoorbeeld in PowerShell al veel sneller gaat dan in het Windows van de muis, is het verkrijgen van systeeminformatie. Een overzicht van de netwerkkaarten, de MAC-adressen en de IP-configuratie bijvoorbeeld. In PowerShell is het één commando, in Windows veel klikken en vensters openen en sluiten.

Bovendien kun je de output van PowerShell altijd filteren of weer verder verwerken in een volgend commando. Een overzicht van alle gedeelde mappen, een overzicht van de geplande taken, een taak toevoegen, het is allemaal met één commando te doen in PowerShell.

01 De console starten

PowerShell begint met het openen van de console waar je commando's kunt invoeren die de computer uitvoert zodra je op Enter drukt. Windows heeft twee van dergelijke consoles, de Opdrachtprompt en de PowerShell, de laatste is verreweg de krachtigste. Om de PowerShell te starten klik je op Start / Alle programma's / Bureau-accessoires / PowerShell / PowerShell. Gebruik je geen Windows 7, maar Windows 8 of 8.1, druk dan op de Windows-toets om naar de Metro-interface te gaan en typ dan PowerShell. Klik dan op Windows PowerShell.

©PXimport

Windows beschikt over twee commando-vensters. PowerShell is hiervan de meest krachtige.

©PXimport

PowerShell starten via de Metro-interface in Windows 8.

©PXimport

Helemaal overschakelen op de PowerShell is goed mogelijk. De vertrouwde DOS-commando's kun je gewoon blijven gebruiken.

02 Opdrachten geven en uitvoeren

Het PowerShell-venster is op de hongerig knipperende prompt na, helemaal leeg. Die leegte komt al snel intimiderend over (ook omdat er geen enkele aanwijzing is wat je kunt doen). De werking is echter eenvoudig. Achter de prompt kun je een commando typen dat zodra je op Enter drukt, door de computer wordt uitgevoerd.

Om te zien welke versie van PowerShell je gebruikt, typ je het commando host en druk op Enter. Bij Version zie je nu de versie van PowerShell, versie 1 was Windows XP en Vista. Versie 2 tot en met zitten respectievelijk in Windows 7, 8 en 8.1. Om de console te sluiten gebruik het commando Exit opnieuw gevolgd door een druk op Enter. Met de pijltjestoets omhoog en omlaag blader je door eerder gebruikte commando's.

©PXimport

In Windows XP, Vista 7, 8 en 8.1 zitten verschillende versies van PowerShell, al zien die er allemaal hetzelfde uit.

03 Cmdlets

Een opdracht die PowerShell kan uitvoeren heet een cmdlet (command-let). Daarvan bestaan duizenden varianten, maar het aantal dat echt op een pc beschikbaar is, is helemaal afhankelijk van de versie van Windows en eventueel extra geïnstalleerde software. PowerShell in Windows 8 heeft bijvoorbeeld standaard iets meer dan 400 cmdlets. Om ze allemaal te zien, kun je het commando Get-Command gebruiken. Na de Enter vliegt de lange lijst over het scherm.

Blader er doorheen en je ziet dat de naam van een cmdlet meteen ook beschrijft wat het commando doet. De naam begint altijd met een bewerking, dan een streepje en dan het onderdeel waar het commando op uitgevoerd moet worden, bijvoorbeeld Get-Printjob of Set-Date.

©PXimport

PowerShell in Windows 8 heeft standaard iets meer dan 400 cmdlets.

PowerShell starten met meer rechten

Wanneer je PowerShell start, krijgt het programma dezelfde rechten als jijzelf. En was je onder Windows XP en Vista veelal de beheerder van de pc, onder Windows 7 en 8(.1) ben je dat niet meer. Je bent nog maar een gewone gebruiker en dus is PowerShell dat ook. Maar voor veel taken heeft PowerShell meer rechten nodig. PowerShell starten met de extra rechten van een beheerder kan door met de rechtermuisknop op de PowerShell-koppeling te klikken en te kiezen voor Als administrator uitvoeren.

Als PowerShell met extra rechten is gestart, kun je dit zien in de titelbalk, daar staat dan in plaats van Windows PowerShell, Administrator: Windows PowerShell. Je kunt dit ook standaard inschakelen door met rechts te klikken op de snelkoppeling, klik dan op Eigenschappen / Snelkoppeling / Geavanceerd / Als administrator uitvoeren.

©PXimport

Een foutmelding in PowerShell is vaak het gevolg van te weinig rechten. PowerShell starten met de rechten van administrator is dan vaak de oplossing.

04 Parameters

Behalve als losse opdracht kunnen de cmdlets ook nog worden aangevuld met extra parameters. De extra parameters bieden de mogelijkheid de uitvoering van de cmdlet te sturen. Een parameter begint altijd met een spatie en een streepje met de naam van de parameter er aan vast, dan een spatie en dan de invulling van de parameter.

Bijvoorbeeld Get-Process geeft een overzicht van alle actieve processen met hun geheugen en processorgebruik, maar Get-Process -ProcessName explorer geeft dat alleen specifiek voor het proces met de naam explorer.

©PXimport

Het verschil tussen de cmdlet Get-Process en Get-Process met aanvullende parameters.

05 Knippen en plakken in PowerShell

Met een paar parameters erbij wordt een PowerShell-commando al snel lang en complex. Bovendien zul je veelgebruikte commando's al snel willen bewaren in een document buiten de console om ze via kopiëren en plakken gemakkelijk te kunnen hergebruiken. Om tekst in de console te selecteren, gebruik je de muis.

Is de selectie gemaakt, dan is Enter voldoende om het te kopiëren. Om tekst te plakken in de console, is een klik met de rechtermuisknop voldoende. De bekende toetscombinaties voor knippen, kopiëren en plakken werken niet in de PowerShell-console.

06 Helpfunctie

PowerShell beschikt over uitgebreide helpfuncties. Om uitleg te krijgen bij een cmdlet gebruik je Get-Help, bijvoorbeeld Get-Help -Name Get-Process. Voor uitleg over de concepten van PowerShell of taalspecifieke zaken is er Get-Help About_ zoals Get-Help About_Modules. De uitleg die PowerShell geeft komt van het internet, maar is gedownload naar de computer. Met Update-Help kun je de gedownloade uitleg updaten. Is de uitleg te groot en vliegt die over het scherm, gebruik dan de toevoeging | more om het te doseren, bijvoorbeeld Get-Help -Name Get-Process | more.

De output stopt dan als het beeld vol is en gaat als je Enter drukt een regel verder, of als je de spatiebalk indrukt een vol beeld verder. Dat |-teken heet overigens een pipe of het sluisteken. Het kan ook handig zijn de uitleg direct online te lezen, met de parameter -online, bijvoorbeeld Get-Help -online Get-Process. PowerShell opent dan de juiste webpagina van Microsoft TechNet meteen in de browser.

©PXimport

Na een update van de helpfunctie geeft de opdracht geen foutmelding, maar duidelijke uitleg.

©PXimport

PowerShell kan ook uitleg online zoeken en direct in de browser openen.

07 Handig formuleren

Bij het invoeren van commando's kun je in de console gebruikmaken van een aantal handigheidjes. De eerste is tab-completion, dat wil zeggen dat als je het eerste deel van een opdracht typt en dan de Tab-toets indrukt, het commando wordt aangevuld. Is er maar één vervolg mogelijk, komt dat er te staan, zijn er meer mogelijkheden dan kun je net zo vaak de Tab-toets indrukken tot de goede aanvulling er staat. Dus met Get- en de Tab-toets blader je door alle Get-commando's.

En dat werkt ook bij argumenten. Zo gaat het sneller en maak je minder fouten. Ook kun je gebruikmaken van wildcards om delen van tekst te vervangen. Zoek je informatie over Outlook, iets wat later in dit artikel nog gebeurt, dan hoef je geen Outlook te typen maar volstaat Outl*. Een sterretje (*) geeft aan dat alles wat daarna komt akkoord is, terwijl een vraagteken (?) aangeeft dat op die plek in de opdracht elk willekeurig ander teken akkoord is.

08 PowerShell ISE

Het PowerShell-team binnen Microsoft wilde de console nog veel beter maken, maar werd daarbij door het Windows-team gehinderd. Dus besloten ze een eigen PowerShell-programmeeromgeving te bouwen. Dat werd PowerShell ISE: de Integrated Scripting Environment. Je kunt deze starten net als elk ander Windows-programma via het startmenu of met het commando ISE vanuit de PowerShell-console.

ISE combineert het consolevenster met een handige bibliotheek waarin alle cmdlets staan. Mocht je die niet zien, via View / Show Command Add-on schakel je deze in. Bovendien werkt de tab-completion hier nog beter, je krijgt tijdens het typen al de mogelijkheden te zien waarmee je het commando verder kunt bouwen. Er is een menu- en knoppenbalk met opties en zoals je in het menu Edit kunt zien, werken plakken, knippen en kopiëren in ISE wel op de standaard Windows-manier.

©PXimport

PowerShell ISE is de betere versie van de PowerShell-console: dezelfde mogelijkheden en nog veel meer.

09 Hangend proces stoppen

PowerShell is ook handig voor systeembeheer. Hangt er bijvoorbeeld een proces, dan kun je dat via het Taakbeheer opzoeken en afsluiten.

Via Get-Proces zie je alle draaiende processen. Via Get-Process en dan de naam van het proces, zie je die informatie voor alleen dat ene proces. Dus Get-process Outl* geeft de status van het programma (proces) Outlook. Lees de ID af en met het commando Stop-Process -id en dan het ID-nummer van Outlook sluit je in één keer de hangende Office-applicatie af.

©PXimport

Een hangend programma sluiten via PowerShell.

10 Programma's zoeken

Behalve wanneer er een snelkoppeling op het bureaublad staat, kan het starten van een programma ook veel klikken kosten. Dat gaat opnieuw sneller via de PowerShell. Met Start-Process kun je een programma starten, bijvoorbeeld Excel via Start-Process Excel. Zien welke programma's allemaal geïnstalleerd zijn, is iets lastiger. Windows kent namelijk vele soorten programma's.

Om de normale Windows-programma's te zien gebruik je Get-WmiObject -Class Win32_Product of Get-StartApps voor alle Metro-Apps op de pc. Om een specifiek programma of Metro-App te zoeken kun je gebruikmaken van de mogelijkheid commando's na elkaar te gebruiken via het |-teken. Get-StartApps | where name -like "b*" geef alle applicaties die beginnen met de letter 'b'. Het deel na de verticale streep gebruikt de uitkomst van het deel voor de streep als input voor de eigen verwerking.

©PXimport

Specifieke programma's zoeken met PowerShell.

11 Overzicht van services en status

Via Configuratiescherm / Systeembeheer/ Services kun je de services zien die op de pc aanwezig zijn, welke gestart en welke gestopt. Dat zijn alweer een aantal klikken en als je wilt sorteren op welke opstart of gestopt zijn, komen er daar nog een paar bij. Het kan ook met het commando Get-Service | Where-Object {$_.Status -eq "Stopped"} om de services te zien die gestopt zijn of met "Running" voor alle actieve services.

12 Informatie over netwerkadapters

Een andere handige informatiebron is de Get-NetAdapter cmdlet. Deze geeft een overzicht van de netwerkkaarten in de pc, merk en model, de status van de verbinding en het MAC-adres en de snelheid. Een mooi overzicht van alle geavanceerde instellingen die zo diep weggestopt in Windows zitten, krijg je via Get-NetAdapterAdvancedProperty en dankzij een streepje kun je de output beperken tot alleen de actieve netwerkkaart, bijvoorbeeld Get-NetAdapterAdvancedProperty | where name -like "Ethernet 2" als Ethernet 2 de actieve netwerkkaart is. En via Get-NetConnectionProfile zie je of het netwerk dat de kaart gebruikt als openbaar, werk of privé is aangemerkt.

©PXimport

Een snel en compleet overzicht over de netwerkverbindingen en alle instellingen kost in PowerShell maar een paar commando's.

13 DOS-commando's gebruiken

In de PowerShell-console kun je ook bijna alle 'oude' DOS-commando's gebruiken, zoals ping en ipconfig. Alleen interactieve DOS-commando's zoals nslookup werken daar niet. Het PowerShell-alternatief voor ipconfig is Get-NetIPAdress. Of via Get-NetIPAddress | where InterfaceAlias -eq "Ethernet 2" als je alleen de IP-configuratie van netwerkkaart 2 wilt weten.

Waar de uitkomst van ipconfig alleen 'domme' tekst is, kun je die van het krachtigere PowerShell-commando altijd weer gebruiken om vervolgslagen mee te maken zoals filteren op een van de kenmerken.

PowerShell bronnen op internet

Op internet is erg veel informatie te vinden over PowerShell. Allereerst op de Microsoft-website en de PowerShell Team weblog.

Ook YouTube is een goede plek om uitleg te vinden voor PowerShell. Veel van de video's zijn nog voor oudere versies van PowerShell, maar zoeken op 'PowerShell introduction' en 'PowerShell beginner' geeft goede resultaten om met PowerShell te beginnen. Wel gaat veel informatie over scripting (het combineren van cmdlets tot miniprogramma's), maar ook over slim gebruik van cmdlets voor alledaags computergebruik is veel te vinden.

▼ Volgende artikel
Spreek en luister: ChatGPT als gesprekspartner
© Limitless Visions - stock.adobe.com
Huis

Spreek en luister: ChatGPT als gesprekspartner

ChatGPT kan steeds meer en luistert tegenwoordig ook naar de prompts (opdrachten) die een gebruiker inspreekt. Bovendien leest de chatbot zelfs de uitgebreide antwoorden voor. Hardop voorlezen werkt zelfs met negen natuurlijk klinkende stemmen.

In drie stappen laten we de spreek- en luisterfunctie van ChatGPT zien:

  • Spreek prompts in door op de microfoonknop te tikken
  • Laat ChatGPT de antwoorden voorlezen
  • Kies uit negen verschillende stemmen

Typen te veel gedoe? Lees dan zeker ook: Geen toetsenbord meer nodig: laat je stem het werk doen

Opdrachten inspreken

OpenAI heeft de spraakfunctie voor ChatGPT voor iedereen beschikbaar gemaakt. In het begin was deze functie uitsluitend bedoeld voor wie een Plus- of Enterprise-abonnement had. Natuurlijk moet je via de instellingen van je mobieltje toestemming geven aan ChatGPT voor het gebruik van de microfoon. Als dat is geregeld, open je de app en tik je onderaan op de microfoonknop. Een animatie reageert op je stem en als je klaar bent met praten, tik je op het vinkje in de zwarte cirkel. De app zal wat je gezegd hebt razendsnel weergeven. Ben je tevreden over de formulering, dan tik je op het pijltje. ChatGPT genereert meteen het antwoord en onderaan verschijnt opnieuw de microfoonknop om de volgende opdracht in te spreken.

Een animatie reageert op je stem.

Antwoorden beluisteren

Vervolgens druk je in de mobiele versie lang op de tekst die de chatbot heeft gegenereerd, zodat er een aantal functies verschijnt. Daar kies je de opdracht Voorlezen. Na enkele seconden hoor je een stem die het antwoord voorleest.

Bovenaan zie je een klein gedeelte waarin je het voorlezen kunt pauzeren en met twee knoppen kun je de tekst vijftien seconden terugspoelen en vooruitspoelen.

In de desktop-versie van ChatGPT zie je onder het antwoord het pictogram van een luidspreker. Daar moet je op klikken om de stem van ChatGPT te horen. Klik dus niet met rechts op de tekst om in het contextueel menu de opdracht Spraak te selecteren. Daarmee start je de voorleesfunctie van de browser en die is niet zo goed.

Boven de tekst kun je het voorlezen pauzeren.

Over voorlezen gesproken ...

Kinderen vinden het heerlijk!

Kies een andere stem

Zowel in de mobiele versie als in de desktopversie heb je de keuze uit negen stemmen. In de Android- en iOS-versie moet je naar het beginscherm gaan van de app, waar je onderaan je gebruikersnaam ziet staan. Tik op de drie puntjes en selecteer Spraak. Je krijgt de stem te horen; ze klinken natuurlijk. Sol is ‘gevat en ontspannen’ en van Ember zegt de app dat hij ‘vol vertrouwen en optimistisch’ klinkt. Maak je keuze door op Gereed te tikken.

In de desktop-versie klik je rechtsboven op de profielknop om de Instellingen te openen. Ook daar kun je dan een van de negen stemmen selecteren.

Van iedere stem lees je de vermeende eigenschappen.

Watch on YouTube
▼ Volgende artikel
Waar voor je geld: 5 alles-in-één laserprinters voor een mooie prijs
© Tim Allen
Huis

Waar voor je geld: 5 alles-in-één laserprinters voor een mooie prijs

Bij ID.nl zijn we gek op producten waar je niet de hoofdprijs voor betaalt. Een paar keer per week speuren we daarom binnen een bepaald thema naar zulke deals. Een all-in-one-printer is een handig apparaat voor het scannen, kopiëren en printen van documenten en foto's. De allerbeste afdrukkwaliteit krijg je met een laserprinter. Wij vonden vijf betaalbare modellen voor je.

Een laserprinter maakt gebruik van toner in plaats van inkt om afdrukken te produceren. Toner is een fijn poeder dat met hoge temperaturen op het papier wordt gesmolten. Dit proces zorgt ervoor dat je met grote toners kunt printen, wat betekent dat je langere tijd kunt blijven afdrukken zonder de toner te hoeven vervangen. Laserprinters zijn vaak snel en efficiënt, waardoor ze uitstekend zijn voor gebruik op kantoor. Maar ook als je thuis veel print, bijvoorbeeld als zzp'er, kan een laserprinter uitkomst bieden.

HP Color Laser 179fnw

De HP Color Laser MFP 179fnw is een van de kleinste kleurenlaserprinters in zijn klasse en is daardoor ideaal voor thuisgebruik en plekken waar niet veel plek voor een printer is. Met functies zoals printen, scannen, kopiëren en zelfs nog faxen biedt deze 4-in-1 printer een hoop veelzijdigheid. De afdruksnelheid bedraagt tot 18 pagina's per minuut in zwart-wit en 4 ppm in kleur, met een resolutie van 600 x 600 dpi.

Dankzij de automatische documentinvoer (ADF) voor 40 pagina's en wifi-verbinding is deze printer gebruiksvriendelijk en multi-inzetbaar. Hoewel de afdruksnelheid lager ligt dan bij sommige concurrenten, is zijn compacte formaat juist een pluspunt.

Brother DCP 1610W

De Brother DCP-1610W is een compacte zwart-wit laserprinter die printen, kopiëren en scannen combineert. Met een afdruksnelheid van 20 pagina's per minuut en een resolutie van 2400 x 600 dpi levert hij haarscherpe resultaten. Dankzij wifi-connectiviteit kunnen meerdere gebruikers eenvoudig draadloos printen.

De papierlade biedt plaats aan 150 vellen en het apparaat is voorzien van anti-jam-technologie om papierstoringen tot een minimum te beperken. In vergelijking met de HP Color Laser MFP 179fnw biedt deze printer geen kleurafdrukken, maar hij is wel een stuk sneller met zijn afdrukken.

HP Laserjet Pro 2Z622

De HP LaserJet Pro 2Z622 is geschikt voor onder meer kantooromgevingen. Met afdruksnelheden tot 42 pagina's per minuut en functies zoals dubbelzijdig printen, scannen, kopiëren en faxen is dit een lekker veelzijdige 4-in-1-laserprinter. Het apparaat ondersteunt zowel bekabelde als draadloze netwerken en biedt geavanceerde beveiligingsfuncties.

Canon i-SENSYS MF272wd

De Canon i-SENSYS MF272dw is een monochrome laserprinter en drukt af met en snelheid van 29 pagina's per minuut. Met een resolutie van 2400 x 600 dpi levert hij snelle en scherpe resultaten. Dankzij automatische dubbelzijdige afdrukken, wifi- en ethernetverbinding is hij veelzijdig inzetbaar.

In vergelijking met de Brother DCP-1610W levert deze Canon i-SENSYS MF272dw snellere prestaties en meer connectiviteitsopties, hoewel hij geen kleurendruk ondersteunt; dan moet je toch echt bij de HP Color Laser MFP 179fnw zijn.

Xerox B225 A4

De Xerox B225 is een zwart-wit all-in-one-laserprinter die printen, kopiëren en scannen combineert. Met een afdruksnelheid van maar liefst 34 pagina's per minuut en een eerste afdruktijd van slechts 6,4 seconden is hij goed in te zetten als je veel en vaak print. De printer beschikt over automatische dubbelzijdige afdrukken, een papierlade voor 250 vellen en kan via wifi of een vaste netwerkverbinding met je thuisnetwerk worden verbonden.