O filtro Palavra-chave no PowerShell

O filtro Palavra-chave no PowerShell

Uma função é uma coleção de instruções do PowerShell que possui um nome atribuído. Para executar a função, você precisa digitar o nome da função.

As instruções em uma função são executadas após você executar a função. Uma função deve ser definida antes de ser chamada.

Um filtro é um tipo especial de função que utiliza a palavra-chave filter. Este tutorial irá ensiná-lo a usar a função de filtro no PowerShell.

Use a Função filter no PowerShell

O filter é uma função que é executada em cada objeto no pipeline. Todas as suas instruções estão incluídas dentro de um bloco de processo na função filter.

Normalmente, uma função utiliza os parâmetros Begin ou End, mas uma função filter possui apenas o bloco de processo.

Sintaxe:

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

O principal objetivo de uma função filter é processar a entrada do pipeline. Ela ajuda a processar a entrada do pipeline de forma mais rápida e eficiente.

O exemplo a seguir recebe 1,2,3 como entrada do pipeline e exibe toda a entrada.

Comando:

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

A variável automática $_ ajuda a capturar o objeto de entrada do pipeline.

Saída:

1
2
3
4
5

Não é necessário usar o laço ForEach na função de filtro porque a funcionalidade do laço já está incorporada.

Comando:

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

Saída:

2

A seguinte função filter obtém objetos de arquivos do pipeline e os exibe na saída.

Comando:

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

No script acima, o cmdlet Get-Child obtém recursivamente itens no diretório C:\folder2.

Saída:

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 artigo ajude você a entender como usar a função de filtro no PowerShell. Para mais informações, leia Trabalhando com Funções no Windows PowerShell.

Está gostando dos nossos tutoriais? Inscreva-se no DelftStack no YouTube para nos apoiar na criação de mais vídeos tutoriais de alta qualidade. Inscrever-se
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