about_Language_Keywords
Kort beskrivning
Beskriver nyckelorden i PowerShell-skriptspråket.
Lång beskrivning
PowerShell har följande språknyckelord. Mer information finns i avsnittet om nyckelordet och informationen som följer tabellen.
Följande nyckelord används av PowerShell-arbetsflöden:
Nyckelord | Referens |
---|---|
inlinescript |
about_InlineScript |
parallel |
about_Parallel |
sequence |
about_Sequence |
workflow |
about_Workflows |
Mer information om arbetsflöden finns i Köra PowerShell-kommandon i ett arbetsflöde.
begin
Anger en del av brödtexten i en funktion, tillsammans med nyckelorden dynamicparam
, process
och end
. Instruktionslistan begin
körs en gång innan några objekt tas emot från pipelinen.
Syntax:
function <name> {
dynamicparam {<statement list>}
begin {<statement list>}
process {<statement list>}
end {<statement list>}
}
break
Gör att ett skript avslutar en loop.
Syntax:
while (<condition>) {
<statements>
...
break
...
<statements>
}
catch
Anger en instruktionslista som ska köras om ett fel inträffar i den medföljande instruktionslistan try
. En feltyp kräver hakparenteser. Det andra par med hakparenteser anger att feltypen är valfri.
Syntax:
try {<statement list>}
catch [[<error type>]] {<statement list>}
class
Anger en ny klass i PowerShell.
Syntax:
class <class-name> {
[[hidden] [static] <property-definition> ...]
[<class-name>([argument-list>]) {<constructor-statement-list>} ...]
[[hidden] [static] <method-definition> ...]
}
continue
Gör att ett skript slutar köra en loop och återgår till villkoret. Om villkoret uppfylls börjar skriptet loopen igen.
Syntax:
while (<condition>) {
<statements>
...
continue
...
<statements>
}
data
I ett skript definierar ett avsnitt som isolerar data från skriptlogik. Kan även innehålla if
instruktioner och vissa begränsade kommandon.
Syntax:
data <variable> [-supportedCommand <cmdlet-name>] {<permitted content>}
do
Används med nyckelordet while
eller until
som en loopkonstruktion. PowerShell kör instruktionslistan minst en gång, till skillnad från en loop som använder while
.
Syntax för while
:
do {<statement list>} while (<condition>)
Syntax för until
:
do {<statement list>} until (<condition>)
dynamicparam
Anger en del av brödtexten i en funktion, tillsammans med nyckelorden begin
, process
och end
. Dynamiska parametrar läggs till vid körning.
Syntax:
function <name> {
dynamicparam {<statement list>}
begin {<statement list>}
process {<statement list>}
end {<statement list>}
}
else
Används med nyckelordet if
för att ange standarduttryckslistan.
Syntax:
if (<condition>) {<statement list>}
else {<statement list>}
elseif
Används med nyckelorden if
och else
för att ange ytterligare villkor. Nyckelordet else
är valfritt.
Syntax:
if (<condition>) {<statement list>}
elseif (<condition>) {<statement list>}
else {<statement list>}
end
Anger en del av brödtexten i en funktion, tillsammans med nyckelorden dynamicparam
, begin
och end
. Instruktionslistan end
körs en gång när alla objekt har tagits emot från pipelinen.
Syntax:
function <name> {
dynamicparam {<statement list>}
begin {<statement list>}
process {<statement list>}
end {<statement list>}
}
enum
enum
används för att deklarera en uppräkning. en distinkt typ som består av en uppsättning namngivna etiketter som kallas uppräkningslistan.
Syntax:
enum <enum-name> {
<label> [= <int-value>]
...
}
exit
Gör att PowerShell avslutar ett skript eller en PowerShell-instans.
Syntax:
exit
exit <exitcode>
När du använder powershell.exe
med filparametern .ps1
ska själva filen (skriptet) innehålla instruktioner för att hantera eventuella fel eller undantag som inträffar när skriptet körs. Du bör bara använda -instruktionen exit
för att ange skriptets status efter körning.
Valfritt tal mellan [int]::MinValue
och [int]::MaxValue
tillåts.
I PowerShell anger -instruktionen exit
värdet för variabeln $LASTEXITCODE
. I Windows Command Shell (cmd.exe
) anger exit-instruktionen värdet för %ERRORLEVEL%
miljövariabeln.
Alla argument som inte är numeriska eller utanför det plattformsspecifika intervallet översätts till värdet 0
för .
I följande exempel anger användaren variabelvärdet för felnivå till 4 genom att lägga exit 4
till i skriptfilen test.ps1
.
C:\scripts\test>type test.ps1
1
2
3
exit 4
C:\scripts\test>powershell -file ./test.ps1
1
2
3
C:\scripts\test>echo %ERRORLEVEL%
4
När du kör powershell.exe -File <path to a script>
och skriptfilen avslutas med ett exit
kommando anges slutkoden till det numeriska argumentet som används med exit
kommandot . Om skriptet inte har någon exit
instruktion är slutkoden alltid 0
när skriptet slutförs utan fel eller 1
när skriptet avslutas från ett ohanterat undantag.
filter
Anger en funktion där instruktionslistan körs en gång för varje indataobjekt. Den har samma effekt som en funktion som bara innehåller ett process
block.
Syntax:
filter <name> {<statement list>}
finally
Definierar en instruktionslista som körs efter -instruktioner som är associerade med try
och catch
. En finally
instruktionslista körs även om du trycker på CTRL+C för att lämna ett skript eller om du använder nyckelordet exit
i skriptet.
Syntax:
try {<statement list>}
catch [<error type>] {<statement list>}
finally {<statement list>}
for
Definierar en loop med ett villkor.
Syntax:
for (<initialize>; <condition>; <iterate>) { <statement list> }
foreach
Definierar en loop med varje medlem i en samling.
Syntax:
foreach (<item> in <collection>) { <statement list> }
from
Reserverad för framtida användning.
function
Skapar en namngiven instruktionslista med återanvändbar kod. Du kan namnge omfånget som en funktion tillhör. Du kan också ange en eller flera namngivna parametrar med hjälp av nyckelordet param
. I listan över funktionsuttryck kan du inkludera dynamicparam
, begin
, process
och end
instruktionslistor.
Syntax:
function [<scope:>]<name> {
param ([type]<$pname1> [, [type]<$pname2>])
dynamicparam {<statement list>}
begin {<statement list>}
process {<statement list>}
end {<statement list>}
}
Du kan också definiera en eller flera parametrar utanför instruktionslistan efter funktionsnamnet.
Syntax:
function [<scope:>]<name> [([type]<$pname1>, [[type]<$pname2>])] {
dynamicparam {<statement list>}
begin {<statement list>}
process {<statement list>}
end {<statement list>}
}
if
Definierar en villkorsstyrd.
Syntax:
if (<condition>) {<statement list>}
hidden
Döljer klassmedlemmar från standardresultatet för cmdleten Get-Member
, IntelliSense och flikslutresultatet.
Syntax:
hidden [data type] $member_name
in
Används i en foreach
-instruktion för att skapa en loop som använder varje medlem i en samling.
Syntax:
foreach (<item> in <collection>){<statement list>}
param
Definierar parametrarna i en funktion.
Syntax:
function [<scope:>]<name> {
param ([type]<$pname1>[, [[type]<$pname2>]])
<statement list>
}
process
Anger en del av brödtexten i en funktion, tillsammans med nyckelorden dynamicparam
, begin
och end
. När en process
instruktionslista tar emot indata från pipelinen körs instruktionslistan process
en gång för varje element från pipelinen. Om pipelinen inte innehåller några objekt körs inte instruktionslistan process
. Om kommandot är det första kommandot i pipelinen körs instruktionslistan process
en gång.
Syntax:
function <name> {
dynamicparam {<statement list>}
begin {<statement list>}
process {<statement list>}
end {<statement list>}
}
return
Gör att PowerShell lämnar det aktuella omfånget, till exempel ett skript eller en funktion, och skriver det valfria uttrycket till utdata.
Syntax:
return [<expression>]
static
Anger att den definierade egenskapen eller metoden är gemensam för alla instanser av klassen där den definieras.
Se class
för användningsexempel.
switch
Om du vill kontrollera flera villkor använder du en switch
instruktion. -instruktionen switch
motsvarar en serie if
instruktioner, men det är enklare.
Instruktionen switch
visar varje villkor och en valfri åtgärd. Om ett villkor erhålls utförs åtgärden.
Syntax 1:
switch [-regex|-wildcard|-exact][-casesensitive] ( <value> )
{
<string>|<number>|<variable>|{ <expression> } {<statement list>}
<string>|<number>|<variable>|{ <expression> } {<statement list>}
...
default {<statement list>}
}
Syntax 2:
switch [-regex|-wildcard|-exact][-casesensitive] -file <filename>
{
<string>|<number>|<variable>|{ <expression> } {<statement list>}
<string>|<number>|<variable>|{ <expression> } {<statement list>}
...
default {<statement list>}
}
throw
Utlöser ett objekt som ett fel.
Syntax:
throw [<object>]
trap
Definierar en instruktionslista som ska köras om ett fel påträffas. En feltyp kräver hakparenteser. Det andra par med hakparenteser anger att feltypen är valfri.
Syntax:
trap [[<error type>]] {<statement list>}
try
Definierar en instruktionslista som ska kontrolleras efter fel medan -uttrycken körs. Om ett fel inträffar fortsätter PowerShell att köras i en catch
- eller finally
-instruktion. En feltyp kräver hakparenteser. Det andra par med hakparenteser anger att feltypen är valfri.
Syntax:
try {<statement list>}
catch [[<error type>]] {<statement list>}
finally {<statement list>}
until
Används i en do
instruktion som en loopkonstruktion där instruktionslistan körs minst en gång.
Syntax:
do {<statement list>} until (<condition>)
using
Gör att du kan ange vilka namnområden som används i sessionen. Typnamn, klasser och medlemmar kräver mindre inmatning för att referera till dem. Du kan också ta med klasser från moduler.
Namnområdessyntax:
using namespace <.Net-framework-namespace>
Modulsyntax:
using module <module-name>
Sammansättningssyntax:
using assembly <.NET-assembly-path>
using assembly <.NET-framework-namespace>
Mer information finns i about_Using.
while
-instruktionen while
är en loopkonstruktion där villkoret testas innan -uttrycken körs. Om villkoret är falskt körs inte -uttrycken.
Instruktionssyntax:
while (<condition>) {
<statements>
}
När den används i en do
-instruktion while
är en del av en loopkonstruktion där instruktionslistan körs minst en gång.
do
loopsyntax:
do {<statement list>} while (<condition>)
Se även
Feedback
https://aka.ms/ContentUserFeedback.
Kommer snart: Under hela 2024 kommer vi att fasa ut GitHub-problem som feedbackmekanism för innehåll och ersätta det med ett nytt feedbacksystem. Mer information finns i:Skicka och visa feedback för