Obtiene los módulos que se han importado, o que se pueden importar, en la sesión actual.

Sintaxis

Get-Module [-All] [-ListAvailable] [-Name <string[]>] [<CommonParameters>]

Get-Module [[-Name] <string[]>] [<CommonParameters>]

Descripción

El cmdlet Get-Module obtiene los módulos que se han importado, o se pueden importar, en la sesión.

Get-Module se limita a obtener los módulos; no los importa. Para importar los módulos a la sesión, se utiliza Import-Module.

Parámetros

-Todo

Obtiene los objetos de módulo para todos los archivos del módulo.

Sin el parámetro All, Get-Module obtiene solamente el objeto de módulo del archivo de módulo predeterminado. El cmdlet selecciona los tipos de archivo en el orden siguiente: archivos de manifiesto (.psd1), archivos de módulo de script (.psm1), archivos de módulo binario (.dll) y archivos de script (.ps1).

¿Requerido?

false

¿Posición?

named

Valor predeterminado

¿Aceptar canalización?

false

¿Aceptar caracteres comodín?

false

-ListAvailable

Obtiene todos los módulos que se pueden importar en la sesión. Get-Module obtiene los módulos en las rutas de acceso especificadas por la variable de entorno $env:PSModulePath.

Sin este parámetro, Get-Module obtiene solamente los módulos que se han importado en la sesión.

¿Requerido?

false

¿Posición?

named

Valor predeterminado

¿Aceptar canalización?

false

¿Aceptar caracteres comodín?

false

-Name <string[]>

Obtiene solamente módulos con los nombres o patrones de nombre especificados. Se permite el uso de caracteres comodín. También se pueden canalizar los nombres a Get-Module.

¿Requerido?

false

¿Posición?

1

Valor predeterminado

All imported or available modules.

¿Aceptar canalización?

true (ByValue)

¿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

Los nombres de módulo se pueden canalizar a Get-Module.

Salidas

System.Management.Automation.PSModuleInfo

Get-Module devuelve objetos que representan los módulos.

Notas

También se puede hacer referencia a Get-Module por su alias, "gmo". Para obtener más información, vea about_Aliases.

El parámetro All devuelve los objetos de módulo correspondientes a todos los archivos cuya extensión es .dll, aunque no implementen cmdlets ni proveedores.

Ejemplo 1

C:\PS>get-module

Descripción
-----------
Este comando obtiene los módulos que se han importado en la sesión actual.






Ejemplo 2

C:\PS>get-module -listAvailable

Descripción
-----------
Este comando obtiene los módulos que se pueden importar en la sesión actual.

Get-Module busca módulos disponibles en la ruta de acceso especificada por la variable de entorno $env:PSModulePath. Para obtener más información sobre PSModulePath, vea about_Modules y about_Environment_Variables.






Ejemplo 3

C:\PS>get-module -listAvailable -all

Descripción
-----------
Este comando obtiene todos los archivos exportados para todos los módulos disponibles.






Ejemplo 4

C:\PS>get-module | get-member -type property

   TypeName: System.Management.Automation.PSModuleInfo

Name              MemberType Definition
----              ---------- ----------
AccessMode        Property   System.Management.Automation.ModuleAcc
Description       Property   System.String Description {get;set;}
ExportedAliases   Property   System.Collections.Generic.Dictionary`
ExportedCmdlets   Property   System.Collections.Generic.Dictionary`
ExportedFunctions Property   System.Collections.Generic.Dictionary`
ExportedVariables Property   System.Collections.Generic.Dictionary`
Guid              Property   System.Guid Guid {get;}
ModuleBase        Property   System.String ModuleBase {get;}
ModuleType        Property   System.Management.Automation.ModuleTyp
Name              Property   System.String Name {get;}
NestedModules     Property   System.Collections.ObjectModel.ReadOnl
OnRemove          Property   System.Management.Automation.ScriptBlo
Path              Property   System.String Path {get;}
PrivateData       Property   System.Object PrivateData {get;set;}
SessionState      Property   System.Management.Automation.SessionSt
Version           Property   System.Version Version {get;}

Descripción
-----------
Este comando obtiene las propiedades del objeto PSModuleInfo que Get-Module devuelve. Hay un objeto para cada archivo de módulo.

Se pueden utilizar las propiedades para aplicar formato y filtrar los objetos de módulo. Para obtener más información sobre las propiedades, vea el artículo sobre propiedades de PSModule en MSDN (Microsoft Developer Network) Library, en https://go.microsoft.com/fwlink/?LinkId=143624.






Ejemplo 5

C:\PS>get-module -listAvailable -all | format-table -property name, moduletype, path -groupby name -auto

   Name: MyTestCmdlets

Name          ModuleType Path
----          ---------- ----
MyTestCmdlets     Script C:\Windows\system32\WindowsPowerShell\v1.0\Modules\TestCmdlets\TestCmdlets.dll


   Name: PSDiagnostics

Name          ModuleType Path
----          ---------- ----
PSDiagnostics   Manifest C:\Windows\system32\WindowsPowerShell\v1.0\Modules\PSDiagnostics\PSDiagnostics.psd1
PSDiagnostics     Script C:\Windows\system32\WindowsPowerShell\v1.0\Modules\PSDiagnostics\PSDiagnostics.psm1


   Name: FileTransfer

Name         ModuleType Path
----         ---------- ----
FileTransfer   Manifest C:\Windows\system32\WindowsPowerShell\v1.0\Modules\FileTransfer\FileTransfer.psd1

Descripción
-----------
Este comando obtiene todos los archivos de módulo (importados y disponibles) y los agrupa por nombre de módulo. Esto permite ver los archivos de módulo que cada script está exportando.






Ejemplo 6

C:\PS>$m = get-module -list -name FileTransfer | where {$_.moduletype -eq "Manifest"}

C:\PS> get-content $m.path

@{
GUID="{8FA5064B-8479-4c5c-86EA-0D311FE48875}"
Author="Microsoft Corporation"
CompanyName="Microsoft Corporation"
Copyright="© Microsoft Corporation. All rights reserved."
ModuleVersion="1.0.0.0"
Description="Windows Powershell File Transfer Module"
PowerShellVersion="2.0"
CLRVersion="2.0"
NestedModules="Microsoft.BackgroundIntelligentTransfer.Management"
FormatsToProcess="FileTransfer.Format.ps1xml"
RequiredAssemblies=Join-Path $psScriptRoot "Microsoft.BackgroundIntelligentTransfer.Management.Interop.dll"
}

Descripción
-----------
Estos comandos muestran el contenido del manifiesto de módulo para el módulo Windows PowerShell File Transfer.

El primer comando obtiene el objeto PSModuleInfo que representa el manifiesto de módulo para el módulo File Transfer. Guarda el objeto en la variable $m.

El segundo comando utiliza la notación de puntos para obtener la ruta de acceso al archivo de manifiesto, que se almacena en la propiedad Path del objeto. A continuación, utiliza el cmdlet Get-Content para obtener el contenido del archivo de manifiesto en la ruta de acceso especificada.

No es obligatorio que los módulos tengan archivos de manifiesto. En caso de que sí lo tengan, solamente se necesita que el manifiesto incluya un número de versión. Sin embargo, los archivos de manifiesto suelen proporcionar información de gran utilidad sobre un módulo, sus requisitos y su contenido.






Ejemplo 7

C:\PS>get-module -listAvailable  -name FileTransfer | format-list -property *

Name              : FileTransfer
Path              : C:\Windows\system32\WindowsPowerShell\v1.0\Modules\FileTransfer\FileTransfer.psd1
Description       : Powershell File Transfer Module
Guid              : 8fa5064b-8479-4c5c-86ea-0d311fe48875
ModuleBase        : C:\Windows\system32\WindowsPowerShell\v1.0\Modules\FileTransfer
PrivateData       :
Version           : 1.0.0.0
ModuleType        : Manifest
AccessMode        : ReadWrite
ExportedFunctions : {}
ExportedCmdlets   : {}
NestedModules     : {}
ExportedVariables : {}
ExportedAliases   : {}
SessionState      : System.Management.Automation.SessionState
OnRemove          :

Descripción
-----------
Este comando muestra todas las propiedades del módulo FileTransfer en una lista. 

Dado que el módulo no se ha importado todavía en la sesión, las propiedades Exported* y la propiedad NestedModules no se rellenan todavía. Estas propiedades se rellenan solo después de que los elementos se hayan exportado y se hayan creado instancias de los módulos anidados.






Ejemplo 8

C:\PS>dir (get-module -listavailable FileTransfer).modulebase

    Directory: C:\Windows\system32\WindowsPowerShell\v1.0\Modules\FileTransfer


Mode                LastWriteTime     Length Name
----                -------------     ------ ----
d----        12/16/2008  12:36 PM            en-US
-a---        11/19/2008  11:30 PM      16184 FileTransfer.Format.ps1xml
-a---        11/20/2008  11:30 PM       1044 FileTransfer.psd1
-a---        12/16/2008  12:20 AM     108544 Microsoft.BackgroundIntelligentTransfer.Management.Interop.dll

Descripción
-----------
Este comando enumera los archivos en el directorio del módulo. Esta es otra manera de determinar lo que existe en un módulo antes de importarlo. Es posible que algunos módulos tengan archivos de Ayuda o archivos Léame que describen el módulo.






Vea también




Tabla de contenido