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. Além disso, como os módulos incluídos no Windows, os módulos que você cria são carregados automaticamente quando uma função é necessária.

Observação

Como prática recomendada, você deve nomear suas funções nos módulos com uma estrutura de nomenclatura semelhante à convenção de nomenclatura do cmdlet. Por exemplo, você usaria o formato verbo-substantivo.

Observação

As funções em módulos podem incluir ajuda baseada em comentários que é detectável usando Get-Help. Para ter suporte a isso, você precisa incluir as informações de ajuda em cada função.

Em muitos casos, suas funções já ficam em um arquivo de script do Windows PowerShell. Para converter um arquivo de script contendo apenas funções em um módulo, renomeie-o com a extensão de arquivo .psm1 . Nenhuma alteração estrutural no arquivo é necessária.

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.0, 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:\Program Files\PowerShell\Modules
  • C:\Arquivos de Programas\PowerShell\7\Módulos

Observação

Se você armazenar módulos em C:\Users\UserID\Document\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.