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.
Parole chiave del linguaggio
Inizia
Specifica una parte del corpo di una funzione, insieme alle DynamicParam
parole chiave , Process
e 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 Begin
parole chiave , Process
e 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 DynamicParam
parole chiave , Begin
e 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 DynamicParam
elenchi di istruzioni , Begin
, Process
e 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 DynamicParam
parole chiave , Begin
e 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>)