about_Language_Keywords
Korte beschrijving
Beschrijft de trefwoorden in de PowerShell-scripttaal.
Lange beschrijving
PowerShell heeft de volgende taaltrefwoorden. Zie het onderwerp over het trefwoord en de informatie die volgt op de tabel voor meer informatie.
De volgende trefwoorden worden gebruikt door PowerShell-werkstromen:
inlinescript
parallel
sequence
workflow
PowerShell-werkstromen worden alleen ondersteund in PowerShell 5.1. Zie PowerShell-opdrachten uitvoeren in een werkstroom voor meer informatie over werkstromen.
begin
Hiermee geeft u een deel van de hoofdtekst van een functie, samen met de dynamicparam
, process
en end
trefwoorden. De begin
instructielijst wordt één keer uitgevoerd voordat objecten van de pijplijn worden ontvangen.
Syntaxis:
function <name> {
dynamicparam {<statement list>}
begin {<statement list>}
process {<statement list>}
end {<statement list>}
}
break
Zorgt ervoor dat een script een lus afsluit.
Syntaxis:
while (<condition>) {
<statements>
...
break
...
<statements>
}
catch
Hiermee geeft u een lijst met instructies op die moet worden uitgevoerd als er een fout optreedt in de bijbehorende try
lijst met instructies. Voor een fouttype zijn vierkante haken vereist. Het tweede paar haakjes geeft aan dat het fouttype optioneel is.
Syntaxis:
try {<statement list>}
catch [[<error type>]] {<statement list>}
class
Hiermee geeft u een nieuwe klasse in PowerShell.
Syntaxis:
class <class-name> {
[[hidden] [static] <property-definition> ...]
[<class-name>([argument-list>]) {<constructor-statement-list>} ...]
[[hidden] [static] <method-definition> ...]
}
clean
Het clean
trefwoord is toegevoegd in PowerShell 7.3. Het trefwoord definieert een codeblok dat gegarandeerd na de begin
en process
end
blokken van een functie wordt uitgevoerd. In tegenstelling tot het end
blok wordt het clean
blok altijd uitgevoerd, zelfs als er een afsluitfout optreedt in een van de andere blokken.
continue
Zorgt ervoor dat een script stopt met het uitvoeren van een lus en teruggaat naar de voorwaarde. Als aan de voorwaarde wordt voldaan, wordt de lus opnieuw gestart.
Syntaxis:
while (<condition>) {
<statements>
...
continue
...
<statements>
}
data
In een script definieert u een sectie waarmee gegevens worden geïsoleerd van de scriptlogica. Kan ook instructies en enkele beperkte opdrachten bevatten if
.
Syntaxis:
data <variable> [-supportedCommand <cmdlet-name>] {<permitted content>}
do
Wordt gebruikt met het while
of until
trefwoord als lusconstructie. PowerShell voert de instructielijst ten minste één keer uit, in tegenstelling tot een lus die wordt gebruikt while
.
Syntaxis voor while
:
do {<statement list>} while (<condition>)
Syntaxis voor until
:
do {<statement list>} until (<condition>)
dynamicparam
Hiermee geeft u een deel van de hoofdtekst van een functie, samen met de begin
, process
en end
trefwoorden. Dynamische parameters worden tijdens runtime toegevoegd.
Syntaxis:
function <name> {
dynamicparam {<statement list>}
begin {<statement list>}
process {<statement list>}
end {<statement list>}
}
else
Wordt gebruikt met het if
trefwoord om de standaardinstructielijst op te geven.
Syntaxis:
if (<condition>) {<statement list>}
else {<statement list>}
elseif
Wordt gebruikt met de if
en else
trefwoorden om aanvullende voorwaarden op te geven. Het else
trefwoord is optioneel.
Syntaxis:
if (<condition>) {<statement list>}
elseif (<condition>) {<statement list>}
else {<statement list>}
end
Hiermee geeft u een deel van de hoofdtekst van een functie, samen met de dynamicparam
, begin
en end
trefwoorden. De end
instructielijst wordt één keer uitgevoerd nadat alle objecten van de pijplijn zijn ontvangen.
Syntaxis:
function <name> {
dynamicparam {<statement list>}
begin {<statement list>}
process {<statement list>}
end {<statement list>}
}
enum
enum
wordt gebruikt om een opsomming te declareren; een uniek type dat bestaat uit een set benoemde labels, de lijst met opsommingstekens genoemd.
Syntaxis:
enum <enum-name> {
<label> [= <int-value>]
...
}
exit
Zorgt ervoor dat PowerShell een script of een PowerShell-exemplaar afsluit.
Syntaxis:
exit
exit <exitcode>
Wanneer u met de parameter Bestand werktpwsh
, moet het bestand zelf instructies bevatten voor het .ps1
afhandelen van fouten of uitzonderingen die optreden terwijl het script wordt uitgevoerd. Gebruik de exit
instructie alleen om de uitvoeringsstatus van het script aan te geven.
In Windows is een willekeurig getal tussen [int]::MinValue
en [int]::MaxValue
toegestaan.
Op Unix zijn alleen positieve getallen tussen [byte]::MinValue
en [byte]::MaxValue
toegestaan. Een negatief getal in het bereik van -1
doorloop -255
wordt automatisch omgezet in een positief getal door 256 toe te voegen. Wordt bijvoorbeeld -2
getransformeerd naar 254
.
In PowerShell stelt de exit
instructie de waarde van de $LASTEXITCODE
variabele in. In de Windows Command Shell (cmd.exe
) stelt de afsluitinstructie de waarde van de %ERRORLEVEL%
omgevingsvariabele in.
Elk argument dat niet-numeriek of buiten het platformspecifieke bereik valt, wordt omgezet in de waarde van 0
.
In het volgende voorbeeld stelt de gebruiker de variabele waarde 4
op foutniveau in door toe te voegen aan exit 4
het scriptbestand test.ps1
.
C:\scripts\test>type test.ps1
1
2
3
exit 4
C:\scripts\test>pwsh -file ./test.ps1
1
2
3
C:\scripts\test>echo %ERRORLEVEL%
4
Wanneer u het scriptbestand uitvoert pwsh.exe -File <path to a script>
en het scriptbestand wordt beëindigd met een exit
opdracht, wordt de afsluitcode ingesteld op het numerieke argument dat wordt gebruikt met de exit
opdracht. Als het script geen exit
instructie heeft, is de afsluitcode altijd 0
wanneer het script zonder fouten wordt voltooid of 1
wanneer het script wordt beëindigd vanuit een niet-verwerkte uitzondering.
filter
Hiermee geeft u een functie op waarin de instructielijst één keer wordt uitgevoerd voor elk invoerobject. Het heeft hetzelfde effect als een functie die alleen een process
blok bevat.
Syntaxis:
filter <name> {<statement list>}
finally
Definieert een instructielijst die wordt uitgevoerd na instructies die zijn gekoppeld aan try
en catch
. Een finally
lijst met instructies wordt uitgevoerd, zelfs als u op Ctrl+C drukt om een script te verlaten of als u het exit
trefwoord in het script gebruikt.
Syntaxis:
try {<statement list>}
catch [<error type>] {<statement list>}
finally {<statement list>}
for
Definieert een lus met een voorwaarde.
Syntaxis:
for (<initialize>; <condition>; <iterate>) { <statement list> }
foreach
Definieert een lus met elk lid van een verzameling.
Syntaxis:
foreach (<item> in <collection>) { <statement list> }
from
Gereserveerd voor toekomstig gebruik.
function
Hiermee maakt u een lijst met benoemde instructies met herbruikbare code. U kunt het bereik een naam geven waartoe een functie behoort. U kunt ook een of meer benoemde parameters opgeven met behulp van het param
trefwoord. In de lijst met functie-instructies kunt u lijsten met instructies opnemen, begin
process
opnemen dynamicparam
en end
weergeven.
Syntaxis:
function [<scope:>]<name> {
param ([type]<$pname1> [, [type]<$pname2>])
dynamicparam {<statement list>}
begin {<statement list>}
process {<statement list>}
end {<statement list>}
}
U hebt ook de mogelijkheid om een of meer parameters buiten de lijst met instructies te definiëren na de naam van de functie.
Syntaxis:
function [<scope:>]<name> [([type]<$pname1>, [[type]<$pname2>])] {
dynamicparam {<statement list>}
begin {<statement list>}
process {<statement list>}
end {<statement list>}
}
if
Hiermee definieert u een voorwaardelijk.
Syntaxis:
if (<condition>) {<statement list>}
hidden
Hiermee worden klasseleden verborgen in de standaardresultaten van de Get-Member
cmdlet, IntelliSense en voltooiingsresultaten van tabbladen.
Syntaxis:
hidden [data type] $member_name
in
Wordt gebruikt in een foreach
instructie om een lus te maken die elk lid van een verzameling gebruikt.
Syntaxis:
foreach (<item> in <collection>){<statement list>}
param
Definieert de parameters in een functie.
Syntaxis:
function [<scope:>]<name> {
param ([type]<$pname1>[, [[type]<$pname2>]])
<statement list>
}
process
Hiermee geeft u een deel van de hoofdtekst van een functie, samen met de dynamicparam
, begin
en end
trefwoorden. Wanneer een process
instructielijst invoer van de pijplijn ontvangt, wordt de process
instructielijst één keer uitgevoerd voor elk element uit de pijplijn. Als de pijplijn geen objecten bevat, wordt de process
lijst met instructies niet uitgevoerd. Als de opdracht de eerste opdracht in de pijplijn is, wordt de process
instructielijst eenmalig uitgevoerd.
Syntaxis:
function <name> {
dynamicparam {<statement list>}
begin {<statement list>}
process {<statement list>}
end {<statement list>}
}
return
Zorgt ervoor dat PowerShell het huidige bereik verlaat, zoals een script of functie, en schrijft de optionele expressie naar de uitvoer.
Syntaxis:
return [<expression>]
static
Hiermee geeft u de eigenschap of methode die is gedefinieerd, is gebruikelijk voor alle exemplaren van de klasse waarin deze is gedefinieerd.
Zie class
voor gebruiksvoorbeelden.
switch
Als u meerdere voorwaarden wilt controleren, gebruikt u een switch
instructie. De switch
instructie is gelijk aan een reeks if
instructies, maar dit is eenvoudiger.
De switch
instructie bevat elke voorwaarde en een optionele actie. Als een voorwaarde wordt verkregen, wordt de actie uitgevoerd.
Syntaxis 1:
switch [-regex|-wildcard|-exact][-casesensitive] ( <value> )
{
<string>|<number>|<variable>|{ <expression> } {<statement list>}
<string>|<number>|<variable>|{ <expression> } {<statement list>}
...
default {<statement list>}
}
Syntaxis 2:
switch [-regex|-wildcard|-exact][-casesensitive] -file <filename>
{
<string>|<number>|<variable>|{ <expression> } {<statement list>}
<string>|<number>|<variable>|{ <expression> } {<statement list>}
...
default {<statement list>}
}
throw
Genereert een object als een fout.
Syntaxis:
throw [<object>]
trap
Hiermee definieert u een instructielijst die moet worden uitgevoerd als er een fout optreedt. Voor een fouttype zijn vierkante haken vereist. Het tweede paar haakjes geeft aan dat het fouttype optioneel is.
Syntaxis:
trap [[<error type>]] {<statement list>}
try
Hiermee definieert u een lijst met instructies die moeten worden gecontroleerd op fouten terwijl de instructies worden uitgevoerd. Als er een fout optreedt, wordt PowerShell nog steeds uitgevoerd in een catch
of-instructie finally
. Voor een fouttype zijn vierkante haken vereist. Het tweede paar haakjes geeft aan dat het fouttype optioneel is.
Syntaxis:
try {<statement list>}
catch [[<error type>]] {<statement list>}
finally {<statement list>}
until
Wordt in een do
instructie gebruikt als lusconstructie waarbij de instructielijst ten minste één keer wordt uitgevoerd.
Syntaxis:
do {<statement list>} until (<condition>)
using
Hiermee kunt u aangeven welke naamruimten worden gebruikt in de sessie. Typenamen, klassen en leden vereisen minder typen om ernaar te verwijzen. U kunt ook klassen uit modules opnemen.
Syntaxis van naamruimte:
using namespace <.Net-namespace>
Modulesyntaxis:
using module <module-name>
Assembly-syntaxis:
using assembly <.NET-assembly-path>
Zie about_Using voor meer informatie.
while
De while
instructie is een lusconstructie waarbij de voorwaarde wordt getest voordat de instructies worden uitgevoerd. Als de voorwaarde onwaar is, worden de instructies niet uitgevoerd.
Syntaxis van instructie:
while (<condition>) {
<statements>
}
Wanneer deze wordt gebruikt in een do
instructie, while
maakt dit deel uit van een lusconstructie waarbij de instructielijst ten minste één keer wordt uitgevoerd.
do
lussyntaxis:
do {<statement list>} while (<condition>)
Zie ook
Feedback
https://aka.ms/ContentUserFeedback.
Binnenkort beschikbaar: In de loop van 2024 zullen we GitHub-problemen geleidelijk uitfaseren als het feedbackmechanisme voor inhoud en deze vervangen door een nieuw feedbacksysteem. Zie voor meer informatie:Feedback verzenden en weergeven voor