Export-ModuleMember

Especifica os membros do módulo que são exportados.

Syntax

Export-ModuleMember
      [[-Function] <String[]>]
      [-Cmdlet <String[]>]
      [-Variable <String[]>]
      [-Alias <String[]>]
      [<CommonParameters>]

Description

O Export-ModuleMember cmdlet especifica os membros do módulo que são exportados de um arquivo de módulo de script (.psm1) ou de um módulo dinâmico criado usando o New-Module cmdlet. Os membros do módulo incluem cmdlets, funções, variáveis e aliases. Esse cmdlet pode ser usado somente em um arquivo de módulo de script ou em um módulo dinâmico.

Se um módulo de script não incluir um Export-ModuleMember comando, as funções e aliases no módulo de script serão exportados, mas as variáveis não. Quando um módulo de script inclui Export-ModuleMember comandos, apenas os membros especificados nos Export-ModuleMember comandos são exportados. Você também pode usar Export-ModuleMember para suprimir ou exportar membros que o módulo de script importa de outros módulos.

Um Export-ModuleMember comando é opcional, mas é uma prática recomendada. Mesmo que o comando confirme os valores padrão, ele demonstra a intenção do autor do módulo.

Exemplos

Exemplo 1: Exportar funções e aliases em um módulo de script

Export-ModuleMember -Function * -Alias *

Este comando exporta todas as funções e aliases definidos no módulo de script.

Exemplo 2: Exportar aliases e funções específicos

Export-ModuleMember -Function Get-Test, New-Test, Start-Test -Alias gtt, ntt, stt

Este comando exporta três aliases e três funções definidas no módulo de script.

Você pode usar esse formato de comando para especificar os nomes dos membros do módulo.

Exemplo 3: Exportar sem membros

Export-ModuleMember

Este comando especifica que nenhum membro definido no módulo de script será exportado.

Este comando impede que os membros do módulo sejam exportados, mas não oculta os membros. Os usuários podem ler e copiar membros do módulo ou usar o operador de chamada (&) para invocar membros do módulo que não são exportados.

Exemplo 4: Exportar uma variável específica

Export-ModuleMember -Variable increment

Este comando exporta apenas a $increment variável do módulo de script. Nenhum outro membro é exportado.

Se você quiser exportar uma variável, além de exportar as funções em um módulo, o Export-ModuleMember comando deve incluir os nomes de todas as funções e o nome da variável.

Exemplo 5: Vários comandos de exportação

# From TestModule.psm1
function New-Test
{
    Write-Output 'I am New-Test function'
}
Export-ModuleMember -Function New-Test

function Validate-Test
{
    Write-Output 'I am Validate-Test function'
}
function Start-Test
{
    Write-Output 'I am Start-Test function'
}
Set-Alias stt Start-Test
Export-ModuleMember -Function Start-Test -Alias stt

Esses comandos mostram como vários Export-ModuleMember comandos são interpretados em um arquivo de módulo de script (.psm1).

Esses comandos criam três funções e um alias e, em seguida, exportam duas das funções e o alias.

Sem os Export-ModuleMember comandos, todas as três funções e o alias seriam exportados. Com os Export-ModuleMember comandos, apenas as funções e Start-Test e New-Test o STT alias são exportados.

Exemplo 6: Exportar membros em um módulo dinâmico

New-Module -Script {function SayHello {"Hello!"}; Set-Alias Hi SayHello; Export-ModuleMember -Alias Hi -Function SayHello}

Este comando mostra como usar Export-ModuleMember em um módulo dinâmico criado usando o New-Module cmdlet.

Neste exemplo, Export-ModuleMember é usado para exportar o Hi alias e a SayHello função no módulo dinâmico.

Parâmetros

-Alias

Especifica os aliases que são exportados do arquivo de módulo de script. Insira os nomes dos alias. Caracteres curinga são permitidos.

Type:String[]
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:True

-Cmdlet

Especifica os cmdlets que são exportados do arquivo de módulo de script. Insira os nomes dos cmdlets. Caracteres curinga são permitidos.

Não é possível criar cmdlets em um arquivo de módulo de script, mas é possível importar cmdlets de um módulo binário para um módulo de script e reexportá-los do módulo de script.

Type:String[]
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:True

-Function

Especifica as funções que são exportadas do arquivo de módulo de script. Insira os nomes das funções. Caracteres curinga são permitidos. Você também pode canalizar cadeias de caracteres de nome de função para Export-ModuleMember.

Type:String[]
Position:0
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:True

-Variable

Especifica as variáveis que são exportadas do arquivo de módulo de script. Insira os nomes das variáveis, sem um caractere de cifrão ($). Caracteres curinga são permitidos.

Type:String[]
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:True

Entradas

String

Você pode canalizar cadeias de caracteres de nome de função para este cmdlet.

Saídas

None

Este cmdlet não retorna nenhuma saída.

Notas

  • Para excluir um membro da lista de membros exportados, adicione um Export-ModuleMember comando que liste todos os outros membros, mas omita o membro que você deseja excluir.