Windows PowerShell gebruiken

Voltooid

Hoewel GUI-beheerhulpprogramma's vaak gemakkelijker te gebruiken zijn dan opdrachtregelprogramma's, is de IT-afdelingsmanager van Contoso van mening dat u sneller veel beheertaken kunt uitvoeren met behulp van een eenvoudig script of één opdracht. Het proces voor het bijwerken van dezelfde gegevens voor verschillende gebruikersaccounts met behulp van Active Directory kan bijvoorbeeld tijdrovend zijn. Met behulp van de Active Directory-module in Windows PowerShell kan een beheerder deze terugkerende taak echter snel uitvoeren. U besluit de impact van het gebruik van Windows PowerShell te onderzoeken om de serverinfrastructuur bij Contoso te beheren.

Overzicht

Windows PowerShell is een opdrachtregel- en scriptomgeving die u kunt gebruiken om alle aspecten van het Windows-besturingssysteem te beheren. Windows PowerShell maakt gebruik van speciale opdrachten met de naam cmdlets die bestaan uit werkwoordparen, zoals Restart-Computer.

U kunt Windows PowerShell ook gebruiken om op afstand verbinding te maken met andere computers en zelfs Windows PowerShell-cmdlets uit te voeren op een lijst met computers, zodat u acties kunt uitvoeren op meerdere computers met behulp van één opdrachtregelinstructie.

Windows PowerShell-opdrachten en -cmdlets

Opdrachten zijn bouwstenen die u samen maakt met behulp van de Windows PowerShell-scripttaal. Ze bieden de belangrijkste functionaliteit van Windows PowerShell. Met behulp van opdrachten kunt u aangepaste oplossingen maken voor complexe beheerproblemen.

Cmdlets zijn de fundamentele onderdelen van opdrachten. Er zijn duizenden Windows PowerShell-cmdlets beschikbaar in de Windows-besturingssystemen en andere Microsoft-producten. Zoals eerder vermeld, bestaan cmdlets uit een werkwoord-zelfstandig naamwoordpaar.

Cmdlet-woorden

Het werkwoordgedeelte van de naam van de cmdlet geeft aan wat de cmdlet doet. Er is een set goedgekeurde werkwoorden die door cmdletmakers worden gebruikt, die consistentie biedt in cmdlet-namen. Veelgebruikte werkwoorden worden beschreven in de volgende tabel.

Term Uitleg
Ophalen Hiermee haalt u een resource op, zoals een bestand of een gebruiker.
Instellen Hiermee wijzigt u de gegevens die zijn gekoppeld aan een resource, zoals een bestand of gebruikerseigenschap.
Nieuw Hiermee maakt u een resource, zoals een bestand of gebruiker.
Toevoegen Hiermee voegt u een resource toe aan een container met meerdere resources.
Verwijderen Hiermee verwijdert u een resource uit een container met meerdere resources.

Zelfstandige naamwoorden voor cmdlets

Het naamwoordgedeelte van de cmdlet-naam geeft aan wat voor soort resources of objecten de cmdlet beïnvloedt. Alle cmdlets die op dezelfde resource werken, moeten hetzelfde zelfstandig naamwoord gebruiken. Het zelfstandig naamwoord service wordt bijvoorbeeld gebruikt voor cmdlets die werken met Windows-services en het zelfstandig naamwoord Proces wordt gebruikt voor het beheren van processen op een computer.

Parameterindeling

Parameters wijzigen de acties die een cmdlet uitvoert. Elke cmdlet mag geen parameters, één parameter of veel parameters hebben. Parameternamen beginnen met een streepje (-). Een spatie scheidt de waarde die u wilt doorgeven van de parameternaam. Als de waarde die u doorgeeft spaties bevat, moet u de tekst tussen aanhalingstekens plaatsen. Sommige parameters accepteren meerdere waarden, die worden gescheiden door komma's en geen spaties.

Voorbeelden

U kunt de volgende voorbeelden bestuderen om te bepalen hoe u Windows PowerShell kunt gebruiken om algemene beheertaken uit te voeren. Met de volgende opdracht wordt een lijst met actieve services weergegeven.

Get-Service | Where-Object {$_.Status -eq "Running"}

Met de volgende opdracht wordt een lijst weergegeven met services met een naam die begint met 'win' en die de service met de naam WinRM uitsluit.

Get-Service -Name "win*" -Exclude "WinRM"

Met deze volgende opdracht wordt een lijst met alle services uitgevoerd naar een tekstbestand dat is opgemaakt voor HTML-uitvoer.

Get-Service | ConvertTo-Html > File.html

Een variatie van de voorgaande opdracht voert alleen geselecteerde gegevens over services uit en exporteert vervolgens de uitvoer naar een CSV-bestand.

Get-Service | Select-Object Name, Status | Export-CSV c:\service.csv

Met de volgende opdracht worden de opgegeven gegevens (telefoonnummer van het kantoor en de principal-naam van de gebruiker) over Active Directory-gebruikers opgehaald.

Get-ADUser -Filter * -Properties OfficePhone | FT OfficePhone,UserPrincipalName

In dit laatste voorbeeld wordt een subset van AD DS-gebruikers (die in de OE Marketing) opgehaald en worden hun eigenschappen gewijzigd door een beschrijving toe te voegen aan elk account.

Get-ADUser -Filter 'Name -like "*"' -SearchBase "OU=Marketing,DC=Contoso,DC=Com" | Set-ADUser -Description "Member of the Marketing Department"

Windows PowerShell ISE

De ISE is een volledig grafische omgeving die een scripteditor, foutopsporingsmogelijkheden, een interactieve console en verschillende hulpprogramma's biedt waarmee u nieuwe Windows PowerShell-opdrachten kunt detecteren en leren. Deze module biedt een basiskennis van hoe de ISE werkt.

Een schermopname van Administrator: Windows PowerShell ISE. De beheerder heeft het venster Opdrachtvoorbeeld ingeschakeld. De beheerder heeft zojuist Get-localuser uitgevoerd in het scriptvenster zonder naam.

Deelvensters

De ISE biedt twee hoofdvensters: een scriptvenster (of scripteditor) en het consoledeelvenster. U kunt deze boven de andere of naast elkaar plaatsen in een indeling met twee deelvensters. U kunt ook één deelvenster maximaliseren en heen en weer schakelen tussen de deelvensters. Standaard wordt er ook een deelvenster Opdrachtinvoegtoepassing weergegeven, waarmee u naar beschikbare opdrachten kunt zoeken of bladeren, en parameters kunt controleren en invullen voor een opdracht die u selecteert. Er is ook een zwevend opdrachtvenster dat dezelfde functionaliteit biedt.

De weergave aanpassen

De ISE biedt verschillende manieren om de weergave aan te passen. Een schuifregelaar in het rechterbenedengebied van het venster wijzigt de actieve tekengrootte. In het dialoogvenster Opties kunt u lettertype- en kleurselectie aanpassen voor veel verschillende Windows PowerShell-tekstelementen, zoals trefwoorden en tekenreekswaarden. De ISE ondersteunt het maken van visuele thema's. Een thema is een verzameling lettertype- en kleurinstellingen die u als groep kunt toepassen om het uiterlijk van de ISE aan te passen. Er zijn verschillende ingebouwde thema's die aanpassingen verpakken voor doeleinden zoals het geven van presentaties. De ISE biedt u ook de mogelijkheid om aangepaste thema's te maken. Andere ISE-functies zijn:

  • Een ingebouwde, uitbreidbare codefragmentbibliotheek die u kunt gebruiken om veelgebruikte opdrachten op te slaan.
  • De mogelijkheid om invoegtoepassingen te laden die zijn gemaakt door Microsoft of door derden die aanvullende functionaliteit bieden.
  • Integratie met de foutopsporingsmogelijkheden van Windows PowerShell.

Externe communicatie met Windows PowerShell

Het doel van externe communicatie met Windows PowerShell is om verbinding te maken met externe computers, zodat u opdrachten op deze computers kunt uitvoeren en de resultaten vervolgens kunt terugleiden naar uw lokale computer. Hiermee kunt u Windows PowerShell-opdrachten uitvoeren op meerdere computers in uw netwerk vanaf uw clientcomputer in plaats van een verbinding met elke computer te maken.

Een belangrijk doel van externe communicatie met Windows PowerShell is het inschakelen van batchbeheer, waarmee u opdrachten op een set externe computers tegelijk kunt uitvoeren. U kunt externe communicatie op een van de drie manieren gebruiken, zoals beschreven in de volgende tabel.

Wijze Description
Externe communicatie van een-op-een In het externe one-to-one-scenario (ook wel interactief externe communicatie genoemd), maakt u verbinding met één externe computer en voert u Windows PowerShell-opdrachten erop uit, precies alsof u zich hebt aangemeld bij de computer en een Windows PowerShell-venster hebt geopend.
One-to-Many remoting In het one-to-Many-externe communicatiescenario (ook wel bekend als externe communicatie uitwaaieren-), geeft u een opdracht uit die parallel op een of meer externe computers wordt uitgevoerd. U werkt niet interactief met elke externe computer. In plaats daarvan worden uw opdrachten uitgegeven en uitgevoerd in een batch en worden de resultaten geretourneerd naar uw computer voor uw gebruik.
Veel-op-een externe communicatie In het scenario voor externe communicatie van veel-op-een (ook wel bekend als fan-in remoting) maken meerdere beheerders externe verbindingen met één computer. Deze beheerders hebben doorgaans verschillende machtigingen op dezelfde externe computer en werken mogelijk in een beperkte Windows PowerShell-sessie.

Let op

Wanneer u opdrachten op meerdere computers uitvoert, moet u rekening houden met de verschillen tussen de externe computers, zoals verschillen in besturingssystemen, bestandssysteemstructuren en systeemregisters.

PowerShell Direct

Veel beheerders kiezen ervoor om een aantal van hun servers uit te voeren in gevirtualiseerde omgevingen. Als u een eenvoudiger beheer van Virtuele Hyper-V-machines met Windows 10 of Windows Server wilt inschakelen, kunt u een functie met de naam PowerShell Direct gebruiken.

Met PowerShell Direct kunt u een Windows PowerShell-cmdlet of -script uitvoeren in een VIRTUELE machine vanaf het hostbesturingssysteem, ongeacht de configuraties voor netwerk, firewall en extern beheer.