Specifica i membri del modulo esportati.

Sintassi

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

Descrizione

Il cmdlet Export-ModuleMember consente di specificare i membri di modulo (ad esempio cmdlet, funzioni, variabili e alias) esportati da un file modulo di script (estensione psm1) o da un modulo dinamico creato tramite il cmdlet New-Module. Questo cmdlet può essere utilizzato solo in un file modulo di script o in un modulo dinamico.

Se un modulo di script non include un comando Export-ModuleMember, le funzioni nel modulo di script vengono esportate, mentre le variabili e gli alias no. Quando un modulo di script include un comando Export-ModuleMember, vengono esportati solo i membri specificati nel comando Export-ModuleMember.

Se un modulo di script contiene più comandi Export-ModuleMember, vengono esportati solo i membri elencati in un comando Export-ModuleMember.

È anche possibile utilizzare Export-ModuleMember per esportare membri che il modulo di script importa da altri moduli.

Parametri

-Alias <string[]>

Specifica gli alias esportati dal file modulo di script. Immettere i nomi degli alias. È consentito l'utilizzo di caratteri jolly.

Obbligatorio?

false

Posizione?

named

Valore predefinito

nessuno

Accettare input da pipeline?

true (ByPropertyName)

Accettare caratteri jolly?

true

-Cmdlet <string[]>

Specifica i cmdlet esportati dal file modulo di script. Immettere i nomi dei cmdlet. È consentito l'utilizzo di caratteri jolly.

Non è possibile creare cmdlet in un file modulo di script, ma è possibile importarli da un modulo binario in un modulo di script ed esportarli nuovamente dal modulo di script.

Obbligatorio?

false

Posizione?

named

Valore predefinito

nessuno

Accettare input da pipeline?

true (ByPropertyName)

Accettare caratteri jolly?

true

-Function <string[]>

Specifica le funzioni esportate dal file modulo di script. Immettere i nomi delle funzioni. È consentito l'utilizzo di caratteri jolly. È anche possibile reindirizzare stringhe di nomi di funzioni a Export-ModuleMember.

Obbligatorio?

false

Posizione?

1

Valore predefinito

nessuno

Accettare input da pipeline?

true (ByValue, ByPropertyName)

Accettare caratteri jolly?

true

-Variable <string[]>

Specifica le variabili esportate dal file modulo di script. Immettere i nomi delle variabili (senza simbolo del dollaro). È consentito l'utilizzo di caratteri jolly.

Obbligatorio?

false

Posizione?

named

Valore predefinito

nessuno

Accettare input da pipeline?

true (ByPropertyName)

Accettare caratteri jolly?

true

<CommonParameters>

Questo cmdlet supporta i parametri comuni -Verbose, -Debug, -ErrorAction, -ErrorVariable, -OutBuffer e -OutVariable. Per ulteriori informazioni, vedere about_Commonparameters.

Input e output

Il tipo di input è il tipo degli oggetti che è possibile reindirizzare al cmdlet. Il tipo restituito è il tipo degli oggetti restituiti dal cmdlet.

Input

System.String

È possibile reindirizzare stringhe di nomi di funzioni a Export-ModuleMember.

Output

Nessuno

Questo cmdlet non genera alcun output.

Note

Per escludere un membro dall'elenco di membri esportati, aggiungere un comando Export-ModuleMember in cui vengono elencati tutti gli altri membri, ma viene omesso il membro che si desidera escludere.

Esempio 1

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

Descrizione
-----------
Tramite questo comando vengono esportati gli alias definiti nel modulo di script, insieme alle funzioni definite nello stesso modulo. 

Per esportare gli alias, operazione non eseguita per impostazione predefinita, è anche necessario specificare le funzioni in modo esplicito. In caso contrario, verranno esportati solo gli alias.






Esempio 2

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

Descrizione
-----------
Tramite questo comando vengono esportati tre alias e tre funzioni definite nel modulo di script. 

È possibile utilizzare questo formato di comando per specificare i nomi dei membri di modulo.






Esempio 3

C:\PS>Export-ModuleMember

Descrizione
-----------
Questo comando specifica che non viene esportato alcun membro definito nel modulo di script.

Questo comando impedisce l'esportazione dei membri di modulo, ma non nasconde i membri. Gli utenti possono leggere e copiare i membri di modulo o utilizzare l'operatore di chiamata (&) per richiamare i membri di modulo che non vengono esportati.






Esempio 4

C:\PS>Export-ModuleMember -variable increment

Descrizione
-----------
Tramite questo comando viene esportata solo la variabile $increment dal modulo di script. Non viene esportato nessun altro membro. 

Se si desidera esportare una variabile, oltre all'esportazione delle funzioni in un modulo, il comando Export-ModuleMember deve includere i nomi di tutte le funzioni e il nome della variabile.






Esempio 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

Descrizione
-----------
Tramite questi comandi viene illustrato come vengono interpretati più comandi Export-ModuleMember in un file modulo di script (.psm1).

Vengono create tre funzioni e un alias, quindi vengono esportate due delle funzioni e l'alias.

Senza i comandi Export-ModuleMember, verrebbero esportate le tre funzioni, ma non l'alias. Con i comandi Export-ModuleMember, vengono esportate solo le funzioni Get-Test e Start-Test e l'alias STT.






Esempio 6

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

Descrizione
-----------
Tramite questo comando viene illustrato come utilizzare Export-ModuleMember in un modulo dinamico creato tramite il cmdlet New-Module.

In questo esempio, Export-ModuleMember viene utilizzato per esportare l'alias "Ciao" e la funzione "BuonGiorno" nel modulo dinamico.






Esempio 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

Descrizione
-----------
Questo esempio include una funzione denominata Export che dichiara una funzione o crea una variabile e scrive un comando Export-ModuleMember per la funzione o la variabile. Ciò consente di dichiarare ed esportare una funzione o una variabile in un singolo comando.

Per utilizzare la funzione Export, includerla nel modulo di script. Per esportare una funzione, digitare "Export" prima della parola chiave Function. 

Per esportare una variabile, utilizzare il formato seguente per dichiarare la variabile e impostarne il valore:

    export variable <nome-variabile> <valore>

I comandi dell'esempio presentano il formato corretto. In questo esempio, vengono esportate solo la funzione New-Test e la variabile $Interval.






Vedere anche




Argomenti della Guida