Especifica los miembros de módulo que se exportan.
Sintaxis
Export-ModuleMember [[-Function] <string[]>] [-Alias <string[]>] [-Cmdlet <string[]>] [-Variable <string[]>] [<CommonParameters>]
Descripción
El cmdlet Export-ModuleMember especifica los miembros de módulo (tales como cmdlets, funciones, variables y alias) que se exportan de un archivo de módulo de script (.psm1) o de un módulo dinámico creado mediante el cmdlet New-Module. Este cmdlet sólo se puede utilizar en un archivo de módulo de script o en un módulo dinámico.
Si un módulo de script no incluye un comando Export-ModuleMember, las funciones del módulo de script se exportan, pero las variables y alias no. Cuando un módulo de script incluye un comando Export-ModuleMember, solamente se exportan los miembros especificados en el comando Export-ModuleMember.
Si un módulo de script contiene varios comandos Export-ModuleMember, se exportan solamente los miembros enumerados en un comando Export-ModuleMember.
También se puede utilizar Export-ModuleMember para exportar miembros que el módulo de script importa de otros módulos.
Parámetros
-Alias <string[]>
Especifica los alias que se exportan del archivo de módulo de script. Escriba los nombres de alias. Se permite el uso de caracteres comodín.
¿Requerido? |
false |
¿Posición? |
named |
Valor predeterminado |
ninguno |
¿Aceptar canalización? |
true (ByPropertyName) |
¿Aceptar caracteres comodín? |
true |
-Cmdlet <string[]>
Especifica los cmdlets que se exportan del archivo de módulo de script. Escriba los nombres de cmdlet. Se permite el uso de caracteres comodín.
No se pueden crear cmdlets en un archivo de módulo de script, pero se pueden importar cmdlets de un módulo binario a un módulo de script y volver a exportarlos del módulo de script.
¿Requerido? |
false |
¿Posición? |
named |
Valor predeterminado |
ninguno |
¿Aceptar canalización? |
true (ByPropertyName) |
¿Aceptar caracteres comodín? |
true |
-Function <string[]>
Especifica las funciones que se exportan del archivo de módulo de script. Escriba los nombres de función. Se permite el uso de caracteres comodín. También se pueden canalizar cadenas de nombre de función a Export-ModuleMember.
¿Requerido? |
false |
¿Posición? |
1 |
Valor predeterminado |
ninguno |
¿Aceptar canalización? |
true (ByValue, ByPropertyName) |
¿Aceptar caracteres comodín? |
true |
-Variable <string[]>
Especifica las variables que se exportan del archivo de módulo de script. Escriba los nombres de variable (sin signo de dólar). Se permite el uso de caracteres comodín.
¿Requerido? |
false |
¿Posición? |
named |
Valor predeterminado |
ninguno |
¿Aceptar canalización? |
true (ByPropertyName) |
¿Aceptar caracteres comodín? |
true |
<CommonParameters>
Este cmdlet admite los parámetros comunes: -Verbose, -Debug, -ErrorAction, -ErrorVariable, -OutBuffer y -OutVariable. Para obtener más información, vea about_Commonparameters.
Entradas y salidas
El tipo de entrada es el tipo de los objetos que se pueden canalizar al cmdlet. El tipo devuelto es el tipo de los objetos que el cmdlet devuelve.
Entradas |
System.String Puede canalizar cadenas de nombre de función a Export-ModuleMember. |
Salidas |
Ninguno Este cmdlet no genera resultados. |
Notas
Para excluir un miembro de la lista de miembros exportados, se agrega un comando Export-ModuleMember que enumere todos los demás miembros pero omita el que se desea excluir.
Ejemplo 1
C:\PS>Export-ModuleMember -function * -alias * Descripción ----------- Este comando exporta los alias y funciones definidos en el módulo de script. Para exportar los alias, que no se exportan de forma predeterminada, también se deben especificar explícitamente las funciones. De lo contrario, solo se exportarán los alias.
Ejemplo 2
C:\PS>Export-ModuleMember -function Get-Test, New-Test, Start-Test -alias gtt, ntt, stt Descripción ----------- Este comando exporta tres alias y tres funciones definidos en el módulo de script. Este formato de comando se puede usar para especificar los nombres de los miembros de módulo.
Ejemplo 3
C:\PS>Export-ModuleMember Descripción ----------- Este comando especifica que no se exporta ningún miembro definido en el módulo de script. Este comando evita que se exporten los miembros de módulo, pero no oculta los miembros. Los usuarios pueden leer y copiar los miembros de módulo o utilizar el operador de llamada (&) para invocar los miembros de módulo que no se exportan.
Ejemplo 4
C:\PS>Export-ModuleMember -variable increment Descripción ----------- Este comando exporta solamente la variable $increment del módulo de script. No se exporta ningún otro miembro. Si se desea exportar una variable además de exportar las funciones de un módulo, el comando Export-ModuleMember debe incluir los nombres de todas las funciones y el nombre de la variable.
Ejemplo 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 Descripción ----------- Estos comandos muestran cómo se interpretan varios comandos Export-ModuleMember en un archivo de módulo de script (.psm1). Estos comandos crean tres funciones y un alias y, a continuación, exportan dos de las tres funciones y el alias. Sin los comandos Export-ModuleMember, se exportarían las tres funciones, pero no se exportaría el alias. Con los comandos Export-ModuleMember, solo se exportan las funciones Get-Test y Start-Test, y el alias STT.
Ejemplo 6
C:\PS>new-module -script {function SayHello {"Hello!"}; set-alias Hi SayHello; Export-ModuleMember -alias Hi -function SayHello} Descripción ----------- Este comando muestra cómo se utiliza Export-ModuleMember en un módulo dinámico que se crea mediante el cmdlet New-Module. En este ejemplo, Export-ModuleMember se utiliza para exportar tanto el alias "Hi" como la función "SayHello" en el módulo dinámico.
Ejemplo 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 Descripción ----------- Este ejemplo incluye una función denominada Export que declara una función o crea una variable y, a continuación, escribe un comando Export-ModuleMember para la función o variable. De este modo es posible declarar y exportar una función o variable en un mismo comando. Para utilizar la función Export, debe incluirse en el módulo de script. Para exportar una función, se debe escribir "Export" antes de la palabra clave Function. Para exportar una variable, se utiliza el formato siguiente a fin de declararla y establecer su valor: export variable <nombreDeVariable> <valor> Los comandos del ejemplo muestran el formato correcto. En este ejemplo, solo se exportan la función New-Test y la variable $Interval.
Vea también