Criar módulos em scripts do Windows PowerShell

Concluído

Você pode criar módulos para armazenar funções e compartilhar essas funções entre scripts. Depois de colocar as suas funções em módulos, elas serão detectáveis da mesma forma que os cmdlets. Assim como os módulos Windows internos, seus módulos também são carregados automaticamente quando uma função é necessária.

Observação

Nomeie suas funções em módulos usando a mesma convenção de nomenclatura de verbo-substantivo que os cmdlets. Por exemplo, use o formato verbo-substantivo.

Observação

As funções nos módulos podem incluir ajuda baseada em comentários que o Get-Help pode descobrir. Inclua as informações de ajuda em cada função para habilitar isso.

Se você já tiver suas funções em um arquivo de script do Windows PowerShell, converta-o em um módulo renomeando-o com a extensão de arquivo .psm1. A estrutura de arquivos não precisa ser alterada.

O Windows PowerShell usa a variável de ambiente $PSModulePath para definir os caminhos dos quais os módulos são carregados. No Windows PowerShell 5.1, os seguintes caminhos são listados:

  • C:\Users\UserID\Documents\WindowsPowerShell\Modules
  • C:\Program Files\WindowsPowerShell\Modules
  • C:\Windows\System32\WindowsPowerShell\1.0\Modules

O Windows PowerShell 7 inclui os novos caminhos a seguir:

  • C:\Users\UserID\Documents\PowerShell\Modules
  • C:\Program Files\PowerShell\Modules
  • C:\Arquivos de Programas\PowerShell\7\Módulos

Observação

O caminho de escopo do usuário do PowerShell 7 (Documents\PowerShell\Modules) é diferente do caminho de escopo do usuário do Windows PowerShell 5.1 (Documents\WindowsPowerShell\Modules). Os módulos armazenados no caminho 5.1 não são carregados automaticamente em sessões de escopo de usuário PS7.

Observação

Se você armazenar módulos em C:\Users\UserID\Documents\WindowsPowerShell\Modules, eles só estarão disponíveis para um único usuário.

Os módulos não são colocados diretamente no diretório Módulos . Em vez disso, você deve criar uma subpasta com o mesmo nome do arquivo e colocar o arquivo nessa pasta. Por exemplo, se você tiver um módulo chamado AdatumFunctions.psm1, coloque-o em C:\Arquivos de Programas\WindowsPowerShell\Modules\AdatumFunctions.