El filtro Palabra clave en PowerShell

El filtro Palabra clave en PowerShell

Una función es una colección de declaraciones de PowerShell que tiene un nombre asignado. Para ejecutar la función, debes escribir el nombre de la función.

Las declaraciones en una función se ejecutan después de que ejecutas la función. Una función debe ser definida antes de que pueda ser llamada.

Un filtro es un tipo especial de función que utiliza la palabra clave filter. Este tutorial te enseñará a usar la función de filtro en PowerShell.

Usa la función filter en PowerShell

El filter es una función que se ejecuta en cada objeto en la tubería. Todas sus declaraciones están incluidas dentro de un bloque de proceso en la función filter.

Normalmente, una función utiliza el parámetro Begin o End, pero una función filter solo tiene el bloque de proceso.

Sintaxis:

filter [<scope:>]<name> { <statement list> }

El propósito principal de una función filter es procesar la entrada de la tubería. Ayuda a procesar la entrada de la tubería más rápido y de manera más eficiente.

El siguiente ejemplo toma 1,2,3 como entrada de la tubería y muestra toda la entrada.

Comando:

filter Input {
    $_
}
1, 2, 3, 4, 5 | Input

La variable automática $_ ayuda a capturar el objeto de entrada de la tubería.

Salida:

1
2
3
4
5

No es necesario usar el bucle ForEach en la función de filtro porque la funcionalidad del bucle ya está incorporada.

Comando:

filter Input {
    if ($_ -eq 2) {
        $_
    }
}
1, 2, 3, 4, 5 | Input

Salida:

2

La siguiente función filter obtiene objetos de archivos de la tubería y luego los muestra en la salida.

Comando:

filter Get-Files {
    $_
}
Get-ChildItem C:\folder2 -Recurse -ErrorAction SilentlyContinue | Get-Files

En el script anterior, el cmdlet Get-Child obtiene recursivamente elementos en el directorio C:\folder2.

Salida:

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

Esperamos que este artículo te ayude a entender cómo usar la función de filtro en PowerShell. Para más información, lee Trabajando con Funciones en Windows PowerShell.

¿Disfrutas de nuestros tutoriales? Suscríbete a DelftStack en YouTube para apoyarnos en la creación de más guías en vídeo de alta calidad. Suscríbete
Rohan Timalsina avatar Rohan Timalsina avatar

Rohan is a learner, problem solver, and web developer. He loves to write and share his understanding.

LinkedIn Website