Examinar funções em scripts do Windows PowerShell
Uma função é um bloco de código reutilizável. Você pode usar funções para executar ações repetitivas dentro de um script em vez de colocar o mesmo código no script várias vezes. Por exemplo, se você tiver um script grande que pode executar várias ações, em vez de colocar o código que registra dados em disco com cada ação, poderá ter uma função que registra dados em disco. Então, a função de registro em log será chamada sempre que uma ação for executada. Posteriormente, se você quiser alterar essa função de registro em log, ela precisará ser alterada em um só lugar.
Ao chamar uma função, você pode passar dados para ela. Use o bloco Param() para uma função da mesma maneira que faz para um script. Após a declaração da função, insira o bloco Param() e as definições para quaisquer variáveis que devem ser passadas para a função. O exemplo a seguir é uma função que usa um bloco Param() para aceitar o nome de um computador:
Function Get-SecurityEvent {
Param (
[string]$ComputerName
) #end Param
Get-EventLog -LogName Security -ComputerName -$ComputerName -Newest 10
}
Para chamar a função dentro de um script, use a seguinte sintaxe:
Get-SecurityEvent -ComputerName LON-DC1
No exemplo anterior, o valor do parâmetro -Computer é passado para a variável $ComputerName na função.
Get-EventLog consulta então os 10 eventos mais recentes do log de segurança desse computador e os exibe na tela. Se você quiser que esses eventos sejam colocados em uma variável e estejam disponíveis para uso no restante do script, use a seguinte sintaxe:
$securityEvents = Get-SecurityEvent -ComputerName LON-DC1