Condividi tramite


Informazioni sulle parole chiave del linguaggio

DESCRIZIONE BREVE

Descrive le parole chiave nel linguaggio di scripting di PowerShell.

DESCRIZIONE LUNGA

PowerShell include le parole chiave del linguaggio seguenti. Per altre informazioni, vedere l'argomento about per la parola chiave e le informazioni che seguono la tabella.

Parola chiave Riferimento
Inizia about_Functions, about_Functions_Advanced
Applicazione about_Break, about_Trap
Genera (Catch) about_Try_Catch_Finally
Classe about_Classes
Continua about_Continue, about_Trap
Dati about_Data_Sections
Definire Riservate per utilizzo futuro
Cosa fare about_Do, about_While
Dynamicparam about_Functions_Advanced_Parameters
Else about_If
Elseif about_If
Fine about_Functions, about_Functions_Advanced_Methods
Enumerazione about_Enum
Esci Descritto in questo argomento
Filtra about_Functions
Finally about_Try_Catch_Finally
For about_For
ForEach about_ForEach
Da Riservate per utilizzo futuro
Funzione about_Functions, about_Functions_Advanced
Nascosto about_Hidden
Se about_If
In about_ForEach
InlineScript about_InlineScript
Param about_Functions
Processo about_Functions, about_Functions_Advanced
Return about_Return
Statica about_Classes
Commutatore about_Switch
Throw about_Throw, about_Functions_Advanced_Methods
Trap about_Trap, about_Break, about_Try_Catch_Finally
Prova about_Try_Catch_Finally
Fino a about_Do
Con about_Using, about_Classes
Var Riservate per utilizzo futuro
While about_While, about_Do

Parole chiave del linguaggio

Inizia

Specifica una parte del corpo di una funzione, insieme alle DynamicParamparole chiave , Processe End . L'elenco Begin di istruzioni viene eseguito una volta prima che tutti gli oggetti vengano ricevuti dalla pipeline.

Sintassi:

function <name> {
    DynamicParam {<statement list>}
    begin {<statement list>}
    process {<statement list>}
    end {<statement list>}
}

Applicazione

Causa l'uscita di un ciclo da uno script.

Sintassi:

while (<condition>) {
   <statements>
   ...

   break
   ...

   <statements>
}

Genera (Catch)

Specifica un elenco di istruzioni da eseguire se si verifica un errore nell'elenco di istruzioni Try a cui si accompagna. Un tipo di errore richiede parentesi quadre. La seconda coppia di parentesi quadre indica che il tipo di errore è facoltativo.

Sintassi:

try {<statement list>}
catch [[<error type>]] {<statement list>}

Classe

Specifica una nuova classe in PowerShell.

Sintassi:

class <class-name> {
    [[hidden] [static] <property-definition> ...]
    [<class-name>([argument-list>]) {<constructor-statement-list>} ...]
    [[hidden] [static] <method-definition> ...]
}

Continua

Fa sì che uno script arresti l'esecuzione di un ciclo e torni alla condizione. Se la condizione viene soddisfatta, lo script avvia nuovamente il ciclo.

Sintassi:

while (<condition>) {
   <statements>
   ...

   continue
   ...

   <statements>
}

Dati

In uno script viene definita una sezione che isola i dati dalla logica dello script. Può includere If anche istruzioni e alcuni comandi limitati.

Sintassi:

data <variable> [-supportedCommand <cmdlet-name>] {<permitted content>}

Cosa fare

Usato con la While parola chiave o Until come costrutto di ciclo. PowerShell esegue l'elenco di istruzioni almeno una volta, a differenza di un ciclo che usa While.

Sintassi per While:

do {<statement list>} while (<condition>)

Sintassi per Until:

do {<statement list>} until (<condition>)

Dynamicparam

Specifica una parte del corpo di una funzione, insieme alle Beginparole chiave , Processe End . I parametri dinamici vengono aggiunti in fase di esecuzione.

Sintassi:

function <name> {
   DynamicParam {<statement list>}
   begin {<statement list>}
   process {<statement list>}
   end {<statement list>}
}

Else

Usato con la If parola chiave per specificare l'elenco di istruzioni predefinito.

Sintassi:

if (<condition>) {<statement list>}
else {<statement list>}

Elseif

Usato con le If parole chiave e Else per specificare istruzioni condizionali aggiuntive. La Else parola chiave è facoltativa.

Sintassi:

if (<condition>) {<statement list>}
elseif (<condition>) {<statement list>}
else {<statement list>}

Fine

Specifica una parte del corpo di una funzione, insieme alle DynamicParamparole chiave , Begine End . L'elenco End di istruzioni viene eseguito una sola volta dopo che tutti gli oggetti sono stati ricevuti dalla pipeline.

Sintassi:

function <name> {
   DynamicParam {<statement list>}
   begin {<statement list>}
   process {<statement list>}
   end {<statement list>}
}

Enumerazione

enum viene utilizzato per dichiarare un'enumerazione; un tipo distinto costituito da un set di etichette denominate denominato elenco di enumeratori.

Sintassi:

enum <enum-name> {
    <label> [= <int-value>]
    ...
}

Esci

Fa sì che PowerShell esce da uno script o da un'istanza di PowerShell.

Sintassi:

exit
exit <exitcode>

Quando si usa powershell.exe con il parametro File , il file .ps1 (script) deve includere istruzioni per la gestione di eventuali errori o eccezioni che si verificano durante l'esecuzione dello script. È consigliabile usare l'istruzione exit solo per indicare lo stato di post-esecuzione dello script.

In PowerShell l'istruzione exit imposta il valore della $LASTEXITCODE variabile. Nella shell dei comandi di Windows (cmd.exe), l'istruzione exit imposta il valore della %ERRORLEVEL% variabile di ambiente.

Nell'esempio seguente l'utente imposta il valore della variabile del livello di errore su 4 aggiungendo exit 4 al file di script 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

Quando si esegue powershell.exe -File <path to a script>, l'istruzione exit imposta la %ERRORLEVEL% variabile su un valore diverso da zero. Se nello script è presente un'eccezione non gestita, %ERRORLEVEL% viene impostato sul valore 1.

Filtra

Specifica una funzione in cui l'elenco di istruzioni viene eseguito una sola volta per ogni oggetto di input. Ha lo stesso effetto di una funzione che contiene solo un blocco Process.

Sintassi:

filter <name> {<statement list>}

Finally

Definisce un elenco di istruzioni che viene eseguito dopo le istruzioni associate a Try e Catch. Viene Finally eseguito un elenco di istruzioni anche se si preme CTRL+C per lasciare uno script o se si usa la parola chiave Exit nello script.

Sintassi:

try {<statement list>}
catch [<error type>] {<statement list>}
finally {<statement list>}

For

Definisce un ciclo utilizzando una condizione.

Sintassi:

for (<initialize>; <condition>; <iterate>) { <statement list> }

ForEach

Definisce un ciclo utilizzando ogni membro di una raccolta.

Sintassi:

ForEach (<item> in <collection>) { <statement list> }

Da

Riservato per utilizzi futuri.

Funzione

Crea un elenco di istruzioni denominate di codice riutilizzabile. È possibile denominare l'ambito a cui appartiene una funzione. È anche possibile specificare uno o più parametri denominati usando la Param parola chiave . All'interno dell'elenco di istruzioni della funzione è possibile includere DynamicParamelenchi di istruzioni , Begin, Processe End .

Sintassi:

function [<scope:>]<name> {
   param ([type]<$pname1> [, [type]<$pname2>])
   DynamicParam {<statement list>}
   begin {<statement list>}
   process {<statement list>}
   end {<statement list>}
}

È anche possibile definire uno o più parametri all'esterno dell'elenco di istruzioni dopo il nome della funzione.

Sintassi:

function [<scope:>]<name> [([type]<$pname1>, [[type]<$pname2>])] {
   DynamicParam {<statement list>}
   begin {<statement list>}
   process {<statement list>}
   end {<statement list>}
}

Se

Definisce un'istruzione condizionale.

Sintassi:

if (<condition>) {<statement list>}

Nascosto

Nasconde i membri della classe dai risultati predefiniti del Get-Member cmdlet e da IntelliSense e dai risultati di completamento tramite tabulazione.

Sintassi:

Hidden [data type] $member_name

In

Utilizzato in un'istruzione ForEach per creare un ciclo che usa ogni membro di una raccolta.

Sintassi:

ForEach (<item> in <collection>){<statement list>}

InlineScript

Esegue i comandi del flusso di lavoro in una sessione di PowerShell condivisa. Questa parola chiave è valida solo in un flusso di lavoro di PowerShell.

Sintassi:

workflow <verb>-<noun>
{
   InlineScript
   {
      <Command/Expression>
      ...

   }
}

La InlineScript parola chiave indica un'attività InlineScript , che esegue i comandi in una sessione standard condivisa (non flusso di lavoro). È possibile usare la InlineScript parola chiave per eseguire comandi che non sono altrimenti validi in un flusso di lavoro e per eseguire comandi che condividono i dati. Per impostazione predefinita, i comandi in un blocco di script InlineScript vengono eseguiti in un processo separato.

Per altre informazioni, vedere Esecuzione di comandi di PowerShell in un flusso di lavoro.

Param

Definisce i parametri in una funzione.

Sintassi:

function [<scope:>]<name> {
   param ([type]<$pname1>[, [[type]<$pname2>]])
   <statement list>
}

Processo

Specifica una parte del corpo di una funzione, insieme alle DynamicParamparole chiave , Begine End . Quando un Process elenco di istruzioni riceve l'input dalla pipeline, l'elenco Process di istruzioni viene eseguito una sola volta per ogni elemento dalla pipeline. Se la pipeline non fornisce oggetti, l'elenco di Process istruzioni non viene eseguito. Se il comando è il primo comando nella pipeline, l'elenco Process di istruzioni viene eseguito una sola volta.

Sintassi:

function <name> {
   DynamicParam {<statement list>}
   begin {<statement list>}
   process {<statement list>}
   end {<statement list>}
}

Return

Fa in modo che PowerShell lasci l'ambito corrente, ad esempio uno script o una funzione, e scriva l'espressione facoltativa nell'output.

Sintassi:

return [<expression>]

Statica

Specifica che la proprietà o il metodo definito è comune a tutte le istanze della classe in cui è definita.

Per esempi di utilizzo, vedere Class .

Commutatore

Per controllare più condizioni, usare un'istruzione Switch . L'istruzione Switch equivale a una serie di istruzioni If, ma è più semplice.

L'istruzione Switch elenca ogni condizione e un'azione facoltativa. Se viene ottenuta una condizione, viene eseguita l'azione.

Sintassi 1:

switch [-regex|-wildcard|-exact][-casesensitive] ( <value> )
{
   <string>|<number>|<variable>|{ <expression> } {<statement list>}
   <string>|<number>|<variable>|{ <expression> } {<statement list>}
   ...

   default {<statement list>}
}

Sintassi 2:

switch [-regex|-wildcard|-exact][-casesensitive] -file <filename>
{
   <string>|<number>|<variable>|{ <expression> } {<statement list>}
   <string>|<number>|<variable>|{ <expression> } {<statement list>}
   ...

   default {<statement list>}
}

Throw

Genera un oggetto come errore.

Sintassi:

throw [<object>]

Trap

Definisce un elenco di istruzioni da eseguire se viene rilevato un errore. Un tipo di errore richiede parentesi quadre. La seconda coppia di parentesi quadre indica che il tipo di errore è facoltativo.

Sintassi:

trap [[<error type>]] {<statement list>}

Prova

Definisce un elenco di istruzioni da controllare per verificare la presenza di errori durante l'esecuzione delle istruzioni. Se si verifica un errore, PowerShell continua l'esecuzione in un'istruzione Catch o Finally . Un tipo di errore richiede parentesi quadre. La seconda coppia di parentesi quadre indica che il tipo di errore è facoltativo.

Sintassi:

try {<statement list>}
catch [[<error type>]] {<statement list>}
finally {<statement list>}

Fino a

Usato in un'istruzione Do come costrutto di ciclo in cui l'elenco di istruzioni viene eseguito almeno una volta.

Sintassi:

do {<statement list>} until (<condition>)

Con

Consente di indicare quali spazi dei nomi vengono usati nella sessione. Le classi e i membri richiedono meno digitazioni per menzionarle. È anche possibile includere classi dai moduli.

Sintassi n. 1:

using namespace <.Net-framework-namespace>

Sintassi n. 2:

using module <module-name>

While

L'istruzione while è un costrutto di ciclo in cui la condizione viene testata prima dell'esecuzione delle istruzioni. Se la condizione è FALSE, le istruzioni non vengono eseguite.

Sintassi dell'istruzione:

while (<condition>) {
   <statements>
 }

Se usato in un'istruzione Do , while fa parte di un costrutto di ciclo in cui l'elenco di istruzioni viene eseguito almeno una volta.

Sintassi del ciclo Do:

do {<statement list>} while (<condition>)

VEDERE ANCHE