Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
Deze bijlage bevat beknopte antwoorden op de beoordelingsvragen aan het einde van elk hoofdstuk. Gebruik deze om uw begrip te valideren en belangrijke concepten te versterken.
Hoofdstuk 1: Aan de slag met PowerShell
- Gebruik de
$PSVersionTableautomatische variabele. - Alleen wanneer u Gebruikersaccountbeheer (UAC) moet omzeilen voor taken die verhoging van bevoegdheden op de lokale computer vereisen.
- Het standaarduitvoeringsbeleid op Windows clientsystemen is
Restricted, waardoor het uitvoeren van scripts wordt voorkomen. - Gebruik
Get-ExecutionPolicydit om het huidige uitvoeringsbeleid te bepalen. - Gebruik
Set-ExecutionPolicy(bijvoorbeeldSet-ExecutionPolicy -ExecutionPolicy RemoteSigned).
Hoofdstuk 2 - Het Help-systeem
- Nee. De parameter DisplayName van
Get-Serviceis benoemd, niet positioneel. -
Get-Processheeft zes parametersets. - Gebruik
Get-Command -Noun EventLog. - Gebruik
Get-Process -Name powershell. - Voer
Update-Help(verhoogd als beheerder in Windows PowerShell) uit om de meest recente Help-inhoud te downloaden en te installeren.
Hoofdstuk 3: Objecten, eigenschappen en methoden detecteren
-
Get-Processproduceert eenSystem.Diagnostics.Processobject. - Pijp de opdracht naar
Get-Member. - Controleer of het object een methode heeft waarmee de actie wordt uitgevoerd.
- Gebruik de parameter van de opdracht
PassThruals deze er een heeft. - Voer de opdracht eenmaal uit en sla de resultaten op in een variabele om te voorkomen dat er herhaaldelijk grote hoeveelheden uitvoer worden gegenereerd tijdens het maken van prototypen.
Hoofdstuk 4 - One-Liners en de pijplijn
- Een PowerShell-one-liner is één doorlopende pijplijn, ongeacht hoeveel fysieke lijnen deze overspant.
- Natuurlijke regeleinden kunnen voorkomen bij tekens zoals de pijp (
|), komma (,), openende vierkante haken ([ ]), accolades ({ }) en haakjes (( )). - U moet filteren om de prestaties en efficiëntie te verbeteren door de hoeveelheid gegevens die via de pijplijn worden doorgegeven, te verminderen.
- Een opdracht kan pijplijninvoer accepteren op waarde (per type) of op eigenschapsnaam.
- Omdat de meeste inhoud in de PowerShell Gallery door de community wordt bijgedragen en mogelijk niet wordt gecontroleerd, moet deze worden gecontroleerd en getest voordat u deze gebruikt.
Hoofdstuk 5 - Opmaak, aliassen, providers, vergelijking
- Omdat opmaak-cmdlets indelingsobjecten produceren die de pijplijn verbreken en niet kunnen worden gebruikt door de meeste andere opdrachten.
- Gebruik
Get-Alias -Name %om de juiste cmdlet te bepalen. - Omdat aliassen de leesbaarheid en draagbaarheid verminderen, waardoor scripts moeilijker te begrijpen zijn voor anderen.
- Gebruik
Get-ChildItem -Path HKLM:\, HKCU:\dit om registersleutels in beide hives weer te geven. - De
-replaceoperator is standaard niet hoofdlettergevoelig, terwijl de.Replace()methode hoofdlettergevoelig is.
Hoofdstuk 6 - Stroombeheer
-
ForEach-Objectverwerkt items één voor één vanuit de pijplijn (streaming), terwijl deforeachinstructie items verwerkt uit een verzameling die al in het geheugen is geladen. - Een
whilelus evalueert de voorwaarde voordat deze wordt uitgevoerd, zodat deze mogelijk helemaal niet wordt uitgevoerd als de voorwaarde onwaar is, in tegenstelling totdo whileendo until, die ten minste één keer worden uitgevoerd. -
breaksluit de lus volledig af, terwijlcontinuede huidige iteratie wordt overgeslagen en naar de volgende gaat.
Hoofdstuk 7 - Werken met WMI
- WMI-cmdlets (bijvoorbeeld
Get-WmiObject) zijn ouder en gebruiken DCOM, terwijl CIM-cmdlets (bijvoorbeeldGet-CimInstance) nieuwer zijn en WSMan standaard gebruiken. - WSMan (Windows Remote Management).
- CIM-sessies maken hergebruik van verbindingen mogelijk, ondersteunen alternatieve referenties, verbeteren de prestaties en vereenvoudigen het beheren van meerdere externe verbindingen.
- Maak een sessieoptie met
New-CimSessionOption, bijvoorbeeld om DCOM te gebruiken, en geef deze door aanNew-CimSession. Gebruik vervolgens die sessie metGet-CimInstance. - Gebruik
Remove-CimSession.
Hoofdstuk 8 - Externe communicatie van PowerShell
- Gebruik
Enable-PSRemoting. - Gebruik
Enter-PSSession. - Hiermee kunt u een permanente sessie gebruiken in plaats van de computernaam en referenties op te geven met elke opdracht.
- Ja, u kunt een PowerShell-sessie (PSSession) gebruiken in een een-op-een interactief externe communicatiescenario.
- Cmdlets die lokaal worden uitgevoerd retourneren live objecten met methoden, terwijl opdrachten op afstand gedeserialiseerde objecten zonder methoden retourneren.
Hoofdstuk 9 - Functies
- Gebruik
Get-Verb. - Voeg het
[CmdletBinding()]kenmerk toe aan de functie. - Wanneer de functie wijzigingen aanbrengt in de systeemstatus of mogelijk impactvolle acties uitvoert.
- Geef
-ErrorAction Stopop. - Documenteer hoe u de functie gebruikt, zodat u en anderen deze gemakkelijk kunnen begrijpen en hulp kunnen krijgen bij
Get-Help.
Hoofdstuk 10 - Scriptmodules
- Maak een
.psm1bestand en plaats uw functies erin. - Het gebruik van goedgekeurde werkwoorden zorgt voor consistentie, vermijdt waarschuwingen en verbetert de detectie.
- Gebruik
New-ModuleManifest. - Gebruik
Export-ModuleMemberhet.psm1bestand of geef functies op in hetFunctionsToExportveld van het.psd1bestand. - De module moet zich in een map bevinden met dezelfde naam als de module, die zich in een pad bevindt dat wordt vermeld en
$env:PSModulePathhet juiste modulebestand (.psm1of manifest) bevat.
Slotnotities
- Deze antwoorden zijn opzettelijk beknopt om belangrijke concepten te versterken.
- Ga terug naar de hoofdstukken voor meer inzicht.
Met ons samenwerken op GitHub
De bron voor deze inhoud vindt u op GitHub, waar u ook problemen en pull-aanvragen kunt maken en controleren. Bekijk onze gids voor inzenders voor meer informatie.