Il filtro Keyword in PowerShell

Una funzione è una raccolta di istruzioni PowerShell a cui è assegnato un nome. Per eseguire la funzione, devi digitare il nome della funzione.
Le istruzioni in una funzione vengono eseguite dopo aver eseguito la funzione. Una funzione deve essere definita prima di poter essere richiamata.
Un filtro è un tipo speciale di funzione che utilizza la parola chiave filter
. Questo tutorial ti insegnerà a utilizzare la funzione filtro in PowerShell.
Usa la funzione filter
in PowerShell
Il filter
è una funzione che viene eseguita su ogni oggetto nella pipeline. Tutte le sue istruzioni sono incluse all’interno di un blocco di processo nella funzione filter
.
Normalmente, una funzione utilizza i parametri Begin
o End
, ma una funzione filter
ha solo il blocco di processo.
Sintassi:
filter [<scope:>]<name> { <statement list> }
Lo scopo principale di una funzione filter
è elaborare l’input dalla pipeline. Aiuta a elaborare l’input della pipeline più velocemente e in modo più efficiente.
Il seguente esempio prende 1,2,3
come input dalla pipeline e visualizza l’intero input.
Comando:
filter Input {
$_
}
1, 2, 3, 4, 5 | Input
La variabile automatica $_
aiuta a catturare l’oggetto di input della pipeline.
Output:
1
2
3
4
5
Non è necessario utilizzare il ciclo ForEach
nella funzione filtro perché la funzionalità del ciclo è già integrata.
Comando:
filter Input {
if ($_ -eq 2) {
$_
}
}
1, 2, 3, 4, 5 | Input
Output:
2
La seguente funzione filter
ottiene oggetti file dalla pipeline e poi li visualizza nell’output.
Comando:
filter Get-Files {
$_
}
Get-ChildItem C:\folder2 -Recurse -ErrorAction SilentlyContinue | Get-Files
Nello script sopra, il cmdlet Get-Child
recupera ricorsivamente gli elementi nella directory C:\folder2
.
Output:
Directory: C:\folder2
Mode LastWriteTime Length Name
---- ------------- ------ ----
d----- 2/23/2022 11:39 PM New folder
-a---- 2/23/2022 10:29 PM 0 books.txt
-a---- 2/23/2022 10:29 PM 0 hello.txt
Directory: C:\folder2\New folder
Mode LastWriteTime Length Name
---- ------------- ------ ----
-a---- 2/23/2022 10:26 PM 0 cars.txt
Speriamo che questo articolo ti aiuti a capire come utilizzare la funzione filtro in PowerShell. Per ulteriori informazioni, leggi Lavorare con le Funzioni in Windows PowerShell.