TEMA
    about_modules

DESCRIPCIÓN BREVE
    Explica cómo se instalan, importan y utilizan los módulos de 
    Windows PowerShell.

DESCRIPCIÓN DETALLADA
    Un módulo es un paquete que contiene comandos de Windows 
    PowerShell, como cmdlets, proveedores, funciones, variables y alias. 

    Las personas que escriben comandos pueden usar módulos para 
    organizar dichos comandos y compartirlos con otras personas. 
    Las personas que reciben los módulos pueden agregar los comandos 
    incluidos en los módulos a sus sesiones de Windows PowerShell y 
    utilizarlos de la misma manera que los comandos integrados.

    En este tema se explica cómo utilizar los módulos de Windows 
    PowerShell. Para obtener información sobre cómo escribir módulos 
    de Windows PowerShell, vea el artículo en MSDN sobre cómo 
    escribir módulos de Windows PowerShell.
    

 CÓMO USAR UN MÓDULO
    Para usar un módulo, realice las tareas siguientes:

        1. Instale el módulo. (Esta tarea suele realizarse automáticamente.) 
        2. Importe el módulo en su sesión de Windows PowerShell.
        3. Busque los comandos que agregó el módulo.
        4. Use los comandos que agregó el módulo.
     
    En este tema se explica cómo realizar estas tareas. También se 
    incluye otra información útil sobre la administración de los módulos.


 CÓMO INSTALAR UN MÓDULO
    Si recibe un módulo en forma de carpeta con archivos, necesitará 
    instalarlo en su equipo para poder importarlo en Windows PowerShell.

    La mayoría de los módulos se instalan automáticamente. Windows 
    PowerShell incluye varios módulos preinstalados. En Windows 
    Server 2008 R2, el Asistente para agregar características del 
    Administrador del servidor instala automáticamente los módulos de 
    características seleccionados. Hay otros muchos módulos que se 
    incluyen en un instalador o programa de instalación que instala 
    el módulo.

    Para instalar una carpeta de módulo: 

        1. Cree un directorio Modules para el usuario actual si no 
           existe ninguno. 

           Para crear un directorio Modules, escriba:

               new-item -type directory -path $home\Documentos\WindowsPowerShell\Modules                             

        2. Copie toda la carpeta del módulo en el directorio Modules.

           Puede utilizar cualquier método para copiar la carpeta, 
           como el Explorador de Windows y Cmd.exe, así como Windows 
           PowerShell.

           En Windows PowerShell, use el cmdlet Copy-Item. 
           Por ejemplo, para copiar la carpeta MyModule desde 
           C:\ps-test\MyModule en el directorio Modules, escriba:

               copy-item -path c:\ps-test\MyModule -dest $home\Documentos\WindowsPowerShell\Modules

    Los módulos se pueden instalar en cualquier ubicación, pero si se 
    instalan en una ubicación de módulo predeterminada, serán más 
    fáciles de administrar. Para obtener más información sobre las ubicaciones 
    de módulo predeterminadas, vea la sección "Ubicaciones de módulo y 
    PSModulePath" que figura a continuación. que figura a continuación.



 CÓMO BUSCAR LOS MÓDULOS INSTALADOS
     Después de instalar un módulo, podrá importarlo en su sesión de 
     Windows PowerShell. 

     Para buscar los módulos instalados en una ubicación de módulo 
     predeterminada, en el símbolo del sistema de Windows PowerShell, 
     escriba:

         get-module -listAvailable


     Para buscar los módulos ya importados en su sesión, en el 
     símbolo del sistema de Windows PowerShell, escriba:

         get-module

     Para obtener más información acerca del cmdlet Get-Module, vea Get-Module.
      


 CÓMO IMPORTAR UN MÓDULO
    Para poder usar los comandos de un módulo, se ha de importar el 
    módulo en una sesión de Windows PowerShell.

    Para importar módulos desde una ubicación de módulo 
    predeterminada en la sesión actual, utilice el formato de comando 
    siguiente.

        import-module <nombre del módulo>
    
    Por ejemplo, el comando siguiente importa el módulo BitsTransfer 
    en la sesión actual.

        import-module BitsTransfer

       
 
    Para importar un módulo que no está en una ubicación de módulo 
    predeterminada, utilice en el comando la ruta de acceso completa 
    a la carpeta del módulo. 

    Por ejemplo, para agregar el módulo TestCmdlets en el directorio 
    C:\ps-test a su sesión, escriba:

        import-module c:\ps-test\TestCmdlets

    Para obtener más información sobre cómo agregar módulos a su 
    sesión, vea "Import-Module".
    


 CÓMO IMPORTAR TODOS LOS MÓDULOS EN UNA SESIÓN DE WINDOWS POWERSHELL 
 En Windows 7 y Windows Server 2008 R2, la tarea "Importar todos los 
 módulos" abre una sesión de Windows PowerShell que incluye todos los 
 módulos y complementos disponibles de Windows PowerShell.

    Para iniciar una sesión de Windows PowerShell con todos los 
    módulos y complementos disponibles de Windows PowerShell, siga el 
    procedimiento que se describe a continuación.

    -- En la barra de tareas, haga clic con el botón secundario en el 
       icono de Windows PowerShell y, a continuación, haga clic en 
       "Importar todos los módulos".

    Nota: en Windows Server 2008 R2, el icono de Windows PowerShell 
          está anclado a la barra de tareas de forma predeterminada. Sin 
          embargo, debe iniciar Windows PowerShell una vez para que 
          aparezca la tarea "Importar todos los módulos".

    En las demás versiones de Windows, para importar todos los 
    módulos disponibles en su sesión, en el símbolo del sistema de 
    Windows PowerShell, escriba:

        get-module -listAvailable | import-module


   
 CÓMO BUSCAR LOS COMANDOS DE UN MÓDULO
    Después de importar un módulo en su sesión de Windows PowerShell, 
    podrá utilizar los comandos incluidos en el módulo.

    Para buscar los comandos agregados por un módulo, en el símbolo 
    del sistema de Windows PowerShell, escriba:

        get-command -module <nombre del módulo>

    Por ejemplo, para buscar los comandos que el módulo BitsTransfer 
    agrega, escriba:

        get-command -module BitsTransfer

    Para obtener más información acerca del cmdlet Get-Command, vea Get-Command.



 CÓMO BUSCAR AYUDA PARA LOS COMANDOS DE UN MÓDULO
    Si el módulo contiene temas de Ayuda para los comandos que 
    exporta, el cmdlet Get-Help mostrará esos temas de Ayuda. Utilice 
    el mismo formato de comando que utilizaría para cualquier tema de 
    Ayuda de Windows PowerShell. 

    Para buscar el tema de Ayuda correspondiente a los comandos de un 
    módulo, en el símbolo del sistema de Windows PowerShell, escriba:

        get-help <nombre del comando> 

    Para obtener ayuda más detallada, escriba:

        get-help <nombre del comando> -detailed

    Por ejemplo, para buscar la Ayuda detallada del cmdlet 
    Start-BitsTransfer, escriba:
       
        get-help Start-BitsTransfer -detailed

    Para obtener más información acerca del módulo Get-Help, vea Get-Help.




 CÓMO QUITAR UN MÓDULO
    Al quitar un módulo, se eliminan de la sesión los comandos que 
    agregó el módulo. 

    Para quitar un módulo de su sesión, utilice el formato de comando 
    siguiente.

        remove-module <nombre del módulo>

    Por ejemplo, el comando siguiente quita el módulo BitsTransfer de 
    la sesión actual.

        remove-module BitsTransfer

    Al quitar un módulo, se invierte la operación de importar un 
    módulo. Al quitar un módulo, no se desinstala el módulo. Para 
    obtener más información acerca del cmdlet Remove-Module, vea 
    Remove-Module.



 CÓMO IMPORTAR UN MÓDULO EN TODAS LAS SESIONES
    El comando Import-Module importa módulos en la sesión actual de 
    Windows PowerShell. Este comando afecta únicamente a la sesión actual.

    Para importar un módulo en todas las sesiones de Windows 
    PowerShell que inicie, agregue el comando Import-Module a su 
    perfil de Windows PowerShell.

    Para obtener más información sobre los perfiles, vea 
    about_Profiles.   

  
 UBICACIONES DE MÓDULO Y PSMODULEPATH
    Hay dos ubicaciones predeterminadas para los módulos de Windows 
    PowerShell, una para el sistema y otra para el usuario actual.

        Sistema:        $pshome\Modules 
                           (%windir%\System32\WindowsPowerShell\v1.0\Modules)

        Usuario actual: $home\Documentos\WindowsPowerShell\Modules 
                            (%UserProfile%\Documentos\WindowsPowerShell\Modules)

                       - o bien,

                       $home\Mis documentos\WindowsPowerShell\Modules 
                           (%UserProfile%\Mis documentos\WindowsPowerShell\Modules)



        Nota: en Windows Vista, Windows Server 2008 y las versiones 
        posteriores de Windows, para agregar o cambiar archivos en el 
        directorio %Windir%\System32, inicie Windows PowerShell con 
        la opción "Ejecutar como administrador".


    Puede cambiar las ubicaciones de módulo predeterminadas en el 
    sistema cambiando el valor de la variable de entorno PSModulePath 
    ($env:psmodulepath). La variable de entorno PSModulePath se basa 
    en la variable de entorno Path y tiene el mismo formato. 
 

    Para ver las ubicaciones de módulo predeterminadas, escriba:

        $env:psmodulepath

    Para agregar una ubicación de módulo predeterminada, use el 
    siguiente formato de comando.

        $env:psmodulepath = $env:psmodulepath + ";<ruta de acceso>"

    El signo de punto y coma (;) en el comando separa la nueva ruta 
    de acceso de la ruta de acceso anterior en la lista.


    Por ejemplo, para agregar el directorio "C:\ps-test\Modules", escriba:

        $env:psmodulepath + ";c:\ps-test\Modules"


    Cuando se agrega una ruta de acceso a PSModulePath, los comandos 
    Get-Module e Import-Module incluyen los módulos en esa ruta de acceso.
       
    El valor que se establece afecta únicamente a la sesión actual. 
    Para que el cambio sea persistente, agregue el comando a su 
    perfil de Windows PowerShell o utilice el elemento del Sistema en el Panel 
    de control para cambiar el valor de la variable de entorno 
    PSModulePath en el Registro.

    Para obtener más información acerca de la variable PSModulePath, vea 
    about_Environment_Variables.
   


 MÓDULOS Y CONFLICTOS DE NOMBRES
    Los conflictos de nombres se producen cuando varios comandos de 
    la sesión tienen el mismo nombre. La importación de un módulo 
    causa un conflicto de nombres cuando los comandos del módulo 
    tienen los mismos nombres que los comandos o elementos de la sesión. 

    Los conflictos de nombres pueden dar lugar a que se oculten o se 
    reemplacen los comandos.
        -- Comandos ocultos. Un comando se oculta cuando este no es 
           el comando que se ejecuta al escribir el nombre de 
           comando, pero puede ejecutarlo mediante otro método, como 
           agregando al nombre de comando el nombre del módulo o 
           complemento en el que se originó.

        -- Comandos reemplazados. Un comando se reemplaza cuando no 
           se puede ejecutar porque un comando con el mismo nombre lo 
           ha sobrescrito. Incluso si se quita el módulo que causó el 
           conflicto, no se puede ejecutar un comando reemplazado a 
           menos que se reinicie la sesión.


    Import-Module podría agregar comandos que ocultan y reemplazan 
    los comandos en la sesión actual. Asimismo, los comandos de la 
    sesión actual pueden ocultar los comandos que agregó el módulo. 

    Para evitar los conflictos de nombres, utilice el parámetro 
    Prefix de Import-Command a fin de crear nombres únicos para los 
    comandos importados.

    Asimismo, puede usar los parámetros Alias, Cmdlet, Function y 
    Variable de Import-Module para seleccionar únicamente los 
    comandos que desea importar, y puede excluir los comandos que causan 
    conflictos de nombres en la sesión actual.

    Incluso si un comando está oculto, puede ejecutarlo agregando al 
    nombre de comando el nombre del módulo o complemento en el que se 
    originó. 

    Las reglas de precedencia de comandos de Windows PowerShell 
    determinan qué comando se ejecuta cuando la sesión incluye 
    comandos con el mismo nombre.

    Por ejemplo, cuando una sesión incluye una función y un cmdlet 
    con el mismo nombre, Windows PowerShell ejecuta la función de 
    forma predeterminada. Cuando la sesión incluye comandos del mismo 
    tipo con el mismo nombre, como dos cmdlets con el mismo nombre, 
    se ejecuta de manera predeterminada el comando que se ha agregado 
    más recientemente. 

    Para obtener más información así como una explicación de las 
    reglas de precedencia e instrucciones para la ejecución de 
    comandos ocultos, vea about_Command_Precedence.
     
     
       
 MÓDULOS Y COMPLEMENTOS
    Puede agregar a su sesión comandos de módulos y complementos. Los 
    módulos pueden agregar todo tipo de comandos, como cmdlets, 
    proveedores y funciones, además de elementos, como variables, 
    alias y unidades de Windows PowerShell. Los complementos pueden 
    agregar únicamente cmdlets y proveedores.

    De hecho, si bien se pueden agregar funciones, alias, variables y 
    unidades de disco a la sesión actual escribiéndolos o ejecutando 
    un script que los agrega, todos los cmdlets y proveedores de la 
    sesión actual provienen de un módulo o complemento.

    Antes de quitar un módulo o un complemento de su sesión, utilice 
    los comandos siguientes para determinar los comandos que se van a 
    quitar. 

    Para buscar el origen de un cmdlet en su sesión, utilice el 
    formato de comando siguiente:

        get-command <nombre del cmdlet> | format-list -property verb, 
        noun, pssnapin, module

    Por ejemplo, para buscar el origen del cmdlet Get-Date, escriba:

        get-command get-date | format-list -property verb, noun, pssnapin, module 
    Para obtener más información sobre los complementos de Windows 
    PowerShell, vea about_PSSnapins.


VEA TAMBIÉN
    about_Command_Precedence
    about_PSSnapins
    Get-Command
    Get-Help
    Get-Module
    Import-Module
    Remove-Module




Tabla de contenido