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

Sintaxe

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

Descrição

O cmdlet Export-ModuleMember especifica os membros do módulo (cmdlets, funções, variáveis e aliases) que são exportados de um arquivo de módulo de script (.psm1) ou de um módulo dinâmico criado com o cmdlet New-Module. Esse cmdlet só pode ser usado 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 comando Export-ModuleMember, as funções no módulo de script serão exportadas, mas as variáveis e os aliases não. Quando um módulo de script incluir um comando Export-ModuleMember, somente os membros especificados no comando Export-ModuleMember serão exportados.

Se um módulo de script contiver vários comandos Export-ModuleMember, somente os membros listados em um comando Export-ModuleMember serão exportados.

Você também poderá usar Export-ModuleMember para exportar os membros que o módulo de script importa de outros módulos.

Parâmetros

-Alias <string[]>

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

Necessário?

false

Posição?

named

Valor padrão

nenhum

Aceitar entrada do pipeline?

true (ByPropertyName)

Aceitar caracteres curinga?

true

-Cmdlet <string[]>

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

Você não pode criar cmdlets em um arquivo de módulo de script, mas pode importar cmdlets de um módulo binário para um módulo de script e reexportá-los do módulo de script.

Necessário?

false

Posição?

named

Valor padrão

nenhum

Aceitar entrada do pipeline?

true (ByPropertyName)

Aceitar caracteres curinga?

true

-Function <string[]>

Especifica as funções que são exportadas do arquivo de módulo de script. Insira os nomes de funções. Os caracteres curinga são permitidos. Também é possível canalizar cadeias de caracteres de nome de função para Export-ModuleMember.

Necessário?

false

Posição?

1

Valor padrão

nenhum

Aceitar entrada do pipeline?

true (ByValue, ByPropertyName)

Aceitar caracteres curinga?

true

-Variable <string[]>

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

Necessário?

false

Posição?

named

Valor padrão

nenhum

Aceitar entrada do pipeline?

true (ByPropertyName)

Aceitar caracteres curinga?

true

<CommonParameters>

Esse cmdlet oferece suporte aos parâmetros comuns: -Verbose, -Debug, -ErrorAction, -ErrorVariable, -OutBuffer e -OutVariable. Para obter mais informações, consulte about_Commonparameters.

Entradas e saídas

O tipo de entrada é o tipo dos objetos que você pode canalizar para o cmdlet. O tipo de retorno é o tipo dos objetos que o cmdlet retorna.

Entradas

System.String

É possível canalizar cadeias de caracteres de nome de função para Export-ModuleMember.

Saídas

None

Este cmdlet não gera nenhuma saída.

Observações

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

Exemplo 1

C:\PS>Export-ModuleMember -function * -alias *

Descrição
-----------
Esse comando exporta os aliases definidos no módulo de script, juntamente com as funções definidas no módulo de script. 

Para exportar os aliases, que não são exportados por padrão, você precisa especificar também as funções explicitamente. Caso contrário, somente os aliases serão exportados.






Exemplo 2

C:\PS>Export-ModuleMember -function Get-Test, New-Test, Start-Test -alias gtt, ntt, stt

Descrição
-----------
Esse 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 de membros do módulo.






Exemplo 3

C:\PS>Export-ModuleMember

Descrição
-----------
Esse comando especifica que nenhum membro definido no módulo de script é exportado.

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






Exemplo 4

C:\PS>Export-ModuleMember -variable increment

Descrição
-----------
Esse comando exporta apenas a variável $increment do módulo de script. Nenhum outro membro é exportado. 

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






Exemplo 5

C:\PS># From TestModule.psm1

function new-test 
    { <function code> }
export-modulemember -function new-test

function validate-test 
    { <function code> }

function start-test 
    { <function code> }
set-alias stt start-test
export-modulemember -function *-test -alias stt

Descrição
-----------
Esses comandos mostram como vários comandos Export-ModuleMember 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 comandos Export-ModuleMember, todas as três funções seriam exportadas, mas não o alias. Com os comandos Export-ModuleMember, somente as funções Get-Test e Start-Test e o alias STT são exportados.






Exemplo 6

C:\PS>new-module -script {function SayHello {"Hello!"}; set-alias Hi SayHello; Export-ModuleMember -alias Hi -function SayHello}

Descrição
-----------
Esse comando mostra como usar o Export-ModuleMember em um módulo dinâmico criado com o uso do cmdlet New-Module.

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






Exemplo 7

C:\PS>function export
{
    param (
        [parameter(mandatory=$true)] [validateset("function","variable")] $type,
        [parameter(mandatory=$true)] $name,
        [parameter(mandatory=$true)] $value
    )
    if ($type -eq "function")
    {
        Set-item "function:script:$name" $value
        Export-ModuleMember $name
    }
    else
    {
        Set-Variable -scope Script $name $value
        Export-ModuleMember -variable $name
    }
} 

export function New-Test 
{
  ...
}


function helper
{
  ...
}

export variable interval 0
$interval = 2

Descrição
-----------
Este exemplo inclui uma função denominada Export que declara uma função ou cria uma variável e, em seguida, escreve um comando Export-ModuleMember para a função ou variável. Isso permite que você declare e exporte uma função ou uma variável em um único comando.

Para usar a função Export, inclua-a no seu módulo de script. Para exportar uma função, digite "Export" antes da palavra-chave Function. 

Para exportar uma variável, use o seguinte formato para declarar a variável e definir seu valor:

    export variable <nome-da-variável> <valor>

Os comandos no exemplo mostram o formato correto. Neste exemplo, somente a função New-Test e a variável Interval são exportadas.






See Also




Sumário