About Functions - Help
About Functions - Help
about_Functions
DESCRIZIONE BREVE
Descrive come creare e utilizzare le funzioni in Windows PowerShell.
DESCRIZIONE DETTAGLIATA
Per funzione si intende un elenco di istruzioni a cui è stato
assegnato un nome. Quando si esegue una funzione, se ne digita il
nome. Le istruzioni incluse nell'elenco vengono eseguite come se
fossero state digitate al prompt dei comandi.
Sintassi
Di seguito è riportata la sintassi di una funzione:
Funzioni semplici
L'utilità di una funzione non dipende dalla sua complessità. La
funzione seguente ottiene le variabili di ambiente che non
appartengono all'account System del sistema corrente:
function other_env
{
get-wmiObject win32_environment |
where {$_.username -ne "<Sistema>"}
}
Parametri denominati
È possibile definire un numero qualsiasi di parametri
denominati, nonché includere un valore predefinito per i
parametri denominati, come illustrato più avanti in questo
argomento.
function <name> {
param ([type]$parameter1[,[type]$parameter2])
<statement list>
}
function small_files {
param ($size)
Get-ChildItem c:\ | where {
$_.length -lt $size -and !$_.PSIsContainer}
}
Parametri posizionali
Per parametro posizionale si intende un parametro senza un
nome. In Windows PowerShell viene utilizzato l'ordine dei
valori dei parametri per associare ogni valore a un parametro
della funzione.
function extension {
$name = $args[0] + ".txt"
$name
}
C:\PS>repeat one
L'input è one
Parametri opzionali
Un'opzione è un parametro che non richiede un valore. Pertanto,
digitare il nome della funzione seguito dal nome del parametro
opzionale.
function switchExample {
param ([switch]$on)
if ($on) { "Switch on" }
else { "Switch off" }
}
C:\PS> SwitchExample
Switch off
È inoltre possibile assegnare un valore booleano a un'opzione
quando si esegue la funzione, come illustrato nell'esempio seguente:
function <nome> {
begin {<elenco istruzioni>}
process {<elenco istruzioni>}
end {<elenco istruzioni>}
}
function pipelineFunction
{
process {"Il valore è: $_"}
}
function PipelineBeginEnd
{
begin {"Begin: L'input è $input"}
end {"End: L'input è $input" }
}
function PipelineInput
{
process {"Elaborazione: $_ " }
end {"End: L'input è: $input" }
}
Filtri
Per filtro si intende un tipo di funzione che viene eseguito su
ogni oggetto nella pipeline. Con tutte le istruzioni incluse in
un blocco Process, un filtro è simile a una funzione.
get-help MyDisks