Hoe u de standaardparameters van PowerShell kunt gebruiken om het opdrachtgedrag te wijzigen

Veel mensen gebruiken PowerShell graag omdat ze hiermee dingen kunnen doen die niet mogelijk zijn met de Windows GUI. Toch valt niet te ontkennen dat sommige PowerShell-cmdlets een beetje vervelend of ingewikkeld kunnen zijn. Maar wat als er een manier was om deze cmdlets te kunnen bewerken en ervoor te zorgen dat ze zich gedragen zoals jij dat wilt? Geloof het of niet, er is een gemakkelijke manier om dat te doen. U kunt het gedrag van de cmdlet wijzigen door de waarden van de PowerShell-standaardparameters te wijzigen. In dit artikel wordt beschreven hoe u de standaardparameters van PowerShell kunt gebruiken om het gedrag van cmdlet-opdrachten te wijzigen.

Waarschuwing

Voordat u aan de slag gaat, zijn er een paar dingen waar u rekening mee moet houden. Hoewel het wijzigen van de standaardparameters en het cmdelt-gedrag van PowerShell handig is, kan dit tot problemen leiden. Als u een script uitvoert en dat script ervan uitgaat dat de gewijzigde cmdlet zich op een bepaalde manier gedraagt, krijgt u mogelijk onvoorspelbare resultaten. Zorg er daarom voor dat u de standaardparameters van PowerShell zorgvuldig wijzigt.

Snelle beoordeling

Er zijn twee PowerShell-concepten waarmee u bekend moet zijn om met standaardparameters te kunnen werken. Het eerste concept is variabel. In PowerShell beginnen variabelenamen altijd met een dollarteken, en u kunt de inhoud van een variabele schrijven door de naam van de variabele te typen.

Het tweede concept waarmee u wellicht bekend bent, is de hashtabel. Een hashtabel is in wezen een lijst die bestaat uit sleutel-waardeparen. Stel dat u bijvoorbeeld een hashtabel wilt maken met de namen van Amerikaanse staten en hun afkortingen. Hieronder staat de code:

$StateList = @{}
$StateList.add('Florida','FL')
$StateList.add('South Carolina','SC')
$StateList.add('Georgië','GA')
$StateList

De eerste regel code maakt een lege hashtabel met de naam $StateList . De volgende drie regels voegen vermeldingen toe aan de tabel. Elke invoer bestaat uit een sleutel (staatnaam) en een waarde (staatafkorting). Op de laatste regel wordt de inhoud van de tabel vermeld. Je kunt de code in actie zien in de onderstaande afbeelding.

Dit is slechts een heel eenvoudig voorbeeld en er zijn veel andere manieren om hashtabellen te gebruiken.

Werk met standaardparameters van PowerShell

PowerShell heeft een ingebouwde variabele die wordt gebruikt om standaardparameters op te slaan die worden gebruikt met de cmdlets. Deze variabele heet $PSDefaultParameterValues . Zoals je misschien hebt gemerkt bij de eerste introductie en naam van de variabele, is dit geen gewone variabele, maar een hashtabel. Als u echter de naam van de variabele in PowerShell invoert, zult u snel zien dat de tabel leeg is, zoals hieronder weergegeven.

Hoe u de standaardparameters van PowerShell kunt gebruiken om het opdrachtgedrag te wijzigen

Dus wat kunnen we doen met deze $PSDefaultParameterValues ​​variabele . Zoals hierboven vermeld, kunt u het gedrag van PowerShell-cmdlets bepalen. Het enige punt is dat je de inherente mogelijkheden van de cmdlet-opdracht niet kunt overwinnen. Laten we dus naar een voorbeeld kijken.

Dit voorbeeld is misschien niet iets dat u in het echte leven wilt gebruiken, maar het laat u zien hoe gemakkelijk het is om het gedrag van cmdlets radicaal te veranderen. Als u de cmdlet Get-TimeZone in PowerShell invoert, ziet u de naam van de tijdzone waarvoor uw pc momenteel is geconfigureerd. Dit voorbeeld zie je in de onderstaande afbeelding.

Hoe u de standaardparameters van PowerShell kunt gebruiken om het opdrachtgedrag te wijzigen

Nu wijzigen we deze cmdlet zodat deze niet de tijdzone weergeeft waarvoor het systeem is geconfigureerd, maar in plaats daarvan de beschikbare tijdzones. Hiervoor hebben we de cmdlet-syntaxis nodig met behulp van de Get-Help cmdlet gevolgd door de Get-TimeZone cmdlet . Hieronder ziet u de syntaxis van de cmdlet.

Hoe u de standaardparameters van PowerShell kunt gebruiken om het opdrachtgedrag te wijzigen

Deze syntaxis bevat een parameter met de naam ListAvailable . Voer de onderstaande opdracht in:

$PSDefaultParameterValues.Add(“Get-TimeZone:ListAvailable”,$True)

Het eerste deel van deze opdracht vertelt PowerShell eenvoudigweg dat u een waarde aan de hashtabel wilt toevoegen, net zoals we deden met het voorbeeld van de Amerikaanse staatsafkorting in de vorige sectie. Deze hashtabel bevat een sleutel/waarde-paar. In dit geval is de sleutel de naam van de cmdlet (Get-TimeZone), gevolgd door een komma en de naam van de parameter die u wilt instellen. In dit geval is de parameternaam ListAvailable. Het tweede deel van deze cmdlet is de waarde die u aan de parameter wilt toewijzen. Hier is het $True . De parameter ListAvailable heeft normaal gesproken geen waarde nodig, dus door $True op te geven , vertelt u PowerShell om deze parameter te gebruiken zonder er een waarde aan toe te wijzen.

Als u naar de onderstaande afbeelding kijkt, ziet u wat er gebeurt als u de Get-TimeZone-cmdlet uitvoert.

Hoe u de standaardparameters van PowerShell kunt gebruiken om het opdrachtgedrag te wijzigen

Dingen om in gedachten te houden

Het belangrijkste dat u moet begrijpen, is dat het toevoegen van een nieuwe waarde voor een PowerShell-standaardparameter het standaardgedrag van de cmdlet wijzigt en niet de mogelijkheden van de cmdlet verwijdert. Zelfs als u de cmdlet Get-TimeZone wijzigt om beschikbare tijdzones weer te geven in plaats van de huidige tijdzone weer te geven. U kunt nog steeds de huidige tijdzone-informatie weergeven als u meer bekijkt.

Een ander ding dat u moet weten, is dat aangepaste standaardparameters kunnen worden verwijderd. Om één item te verwijderen, gebruikt u de opdracht $PSDefaultParameterValues.Remove , gevolgd door de naam van het item dat u wilt verwijderen. Bijvoorbeeld:

$PSDefaultParameterValues.Remove(“Get-TimeZone:ListAvailable”)

In plaats daarvan kunt u de volledige inhoud van de hashtabel verwijderen met behulp van deze opdracht:

$PSDefaultParameterValues.Clear();

Voorbeelden van beide technieken ziet u hieronder:

Hoe u de standaardparameters van PowerShell kunt gebruiken om het opdrachtgedrag te wijzigen

U kunt de gehele hashtabel verwijderen of een enkel item verwijderen.

Het wijzigen van het standaardgedrag van een cmdlet-opdracht is iets dat u niet vaak doet, maar als u het nodig heeft, weet u al hoe u het moet wijzigen.

Ik wens je succes!

Bekijk meer:

Laat een reactie achter

Hoe u de kennisgeving van een auteursrechtverzoek in de rechterhoek van het scherm op Windows 10 verwijdert

Hoe u de kennisgeving van een auteursrechtverzoek in de rechterhoek van het scherm op Windows 10 verwijdert

Ziet u een activeringsmelding voor Windows 10 in de rechterhoek van het scherm? In dit artikel wordt uitgelegd hoe u de kennisgeving van een auteursrechtverzoek op Windows 10 verwijdert.

Instructies van AZ voor het installeren van Windows 10 build 14393.222

Instructies van AZ voor het installeren van Windows 10 build 14393.222

Onlangs heeft Microsoft de nieuwste cumulatieve update voor Windows 10 pc-gebruikers uitgebracht, genaamd Build 14393.222. Deze update voor Windows 10 repareert voornamelijk bugs op basis van gebruikersfeedback en verbetert de prestatie-ervaring van het besturingssysteem.

Bescherm uw computernetwerk met Bastion host in slechts 3 stappen

Bescherm uw computernetwerk met Bastion host in slechts 3 stappen

Heeft u computers op uw lokale netwerk die externe toegang nodig hebben? Het gebruik van een bastionhost als poortwachter voor uw netwerk kan een goede oplossing zijn.

3 manieren om snel alle gebeurtenislogboeken in Windows 10 te wissen

3 manieren om snel alle gebeurtenislogboeken in Windows 10 te wissen

Soms moet u oude gebeurtenislogboeken in één keer verwijderen. In deze handleiding laat Quantrimang.com u 3 manieren zien om snel alle gebeurtenislogboeken in Windows 10 Event Viewer te verwijderen.

Hoe u een Windows-toets maakt als uw toetsenbord niet beschikbaar is

Hoe u een Windows-toets maakt als uw toetsenbord niet beschikbaar is

Als je liever een oud klassiek toetsenbord gebruikt, zoals het IBM Model M, dat geen fysieke Windows-sleutel bevat, kun je er eenvoudig meer toevoegen door een sleutel te lenen die je niet vaak gebruikt.

Hoe u een transparante achtergrondmodus creëert op Windows 10

Hoe u een transparante achtergrondmodus creëert op Windows 10

WindowTop is een tool waarmee u alle toepassingsvensters en programma's op computers met Windows 10 kunt dimmen. Of u kunt een donkere achtergrondinterface op Windows gebruiken.

Valse IP-methoden helpen u anoniem toegang te krijgen

Valse IP-methoden helpen u anoniem toegang te krijgen

In veel eerdere artikelen hebben we vermeld dat online anoniem blijven uiterst belangrijk is. Elk jaar lekt privé-informatie uit, waardoor online beveiliging steeds noodzakelijker wordt. Dat is ook de reden dat we virtuele IP-adressen moeten gebruiken. Hieronder zullen we leren over methoden om nep-IP's te maken!

Hoe u de taalbalk op de taakbalk van Windows 8 uitschakelt

Hoe u de taalbalk op de taakbalk van Windows 8 uitschakelt

De Taalbalk op Windows 8 is een miniatuurtaalwerkbalk die is ontworpen om automatisch op het bureaublad te worden weergegeven. Veel mensen willen deze taalbalk echter op de taakbalk verbergen.

Tips om de internetverbindingssnelheid van Linksys te optimaliseren

Tips om de internetverbindingssnelheid van Linksys te optimaliseren

Het maximaliseren van de internetsnelheid is essentieel voor het optimaliseren van uw netwerkverbinding. U kunt een optimale entertainment- en werkervaring hebben met behulp van computers, internet-tv's, gameconsoles, enz.

Hoe u WEP, WPA, WPA2 instelt voor de Linksys-router

Hoe u WEP, WPA, WPA2 instelt voor de Linksys-router

Draadloze connectiviteit is tegenwoordig een noodzaak en daarom is draadloze beveiliging essentieel om de veiligheid in uw interne netwerk te garanderen.