Compartir a través de


Save-Help

Descarga y guarda los archivos de ayuda más recientes en un directorio del sistema de archivos.

Sintaxis

Path (valor predeterminado)

Save-Help
    [-DestinationPath] <String[]>
    [[-Module] <PSModuleInfo[]>]
    [[-UICulture] <CultureInfo[]>]
    [-FullyQualifiedModule <ModuleSpecification[]>]
    [-Credential <PSCredential>]
    [-UseDefaultCredentials]
    [-Force]
    [<CommonParameters>]

LiteralPath

Save-Help
    [[-Module] <PSModuleInfo[]>]
    [[-UICulture] <CultureInfo[]>]
    -LiteralPath <String[]>
    [-FullyQualifiedModule <ModuleSpecification[]>]
    [-Credential <PSCredential>]
    [-UseDefaultCredentials]
    [-Force]
    [<CommonParameters>]

Description

El cmdlet Save-Help descarga los archivos de ayuda más recientes para los módulos de PowerShell y los guarda en un directorio que especifique. Esta característica le permite actualizar los archivos de ayuda en equipos que no tienen acceso a Internet y facilita la actualización de los archivos de ayuda en varios equipos.

En Windows PowerShell 3.0, save-Help funcionaba solo para los módulos instalados en el equipo local. Aunque era posible importar un módulo desde un equipo remoto, o obtener una referencia a un objeto PSModuleInfo de desde un equipo remoto mediante la comunicación remota de PowerShell, la propiedad HelpInfoUri no se conservaba y save-Help no funcionaría para la Ayuda remota del módulo.

En Windows PowerShell 4.0, la propiedad HelpInfoUri se conserva a través de la comunicación remota de PowerShell, lo que permite que save-Help funcionen para los módulos instalados en equipos remotos. También es posible guardar un objeto PSModuleInfo en disco o medios extraíbles ejecutando Export-Clixml en un equipo que no tiene acceso a Internet, importar el objeto en un equipo que tenga acceso a Internet y, a continuación, ejecutar Save-Help en el objeto PSModuleInfo. La ayuda guardada se puede transportar al equipo remoto mediante medios de almacenamiento extraíbles, como una unidad USB. La ayuda se puede instalar en el equipo remoto ejecutando Update-Help. Este proceso se puede usar para instalar ayuda en equipos que no tienen ningún tipo de acceso a la red.

Para instalar archivos de ayuda guardados, ejecute el cmdlet Update-Help. Agregue su parámetro SourcePath para especificar la carpeta en la que guardó los archivos de Ayuda.

Sin parámetros, un comando Save-Help descarga la ayuda más reciente para todos los módulos de la sesión y para los módulos instalados en el equipo en una ubicación que se muestra en la variable de entorno PSModulePath . Esta acción omite los módulos que no admiten ayuda actualizable sin advertencia.

El cmdlet Save-Help comprueba la versión de los archivos de ayuda de la carpeta de destino. Si hay archivos de ayuda más recientes disponibles, este cmdlet descarga los archivos de ayuda más recientes de Internet y, a continuación, los guarda en la carpeta . El cmdlet Save-Help funciona igual que el cmdlet Update-Help, salvo que guarda los archivos del gabinete (.cab) descargados, en lugar de extraer los archivos de ayuda de los archivos de gabinete e instalarlos en el equipo.

La ayuda guardada para cada módulo consta de un archivo de información de ayuda (HelpInfo XML) y un archivo de gabinete (.cab) para los archivos de ayuda de cada referencia cultural de la interfaz de usuario. No es necesario extraer los archivos de ayuda del archivo de gabinete. El cmdlet Update-Help extrae los archivos de ayuda, valida el XML para la seguridad y, a continuación, instala los archivos de ayuda y el archivo de información de ayuda en una subcarpeta específica del idioma de la carpeta del módulo.

Para guardar los archivos de ayuda de los módulos en la carpeta de instalación de PowerShell ($pshome\Modules), inicie PowerShell mediante la opción Ejecutar como administrador. Debe ser miembro del grupo Administradores del equipo para descargar los archivos de ayuda de estos módulos.

Este cmdlet se introdujo en Windows PowerShell 3.0.

Ejemplos

Ejemplo 1: Guardar la ayuda para el módulo DhcpServer

# Option 1: Run Invoke-Command to get the PSModuleInfo object for the remote DHCP Server module, save the PSModuleInfo object in the variable $m, and then run Save-Help.

$m = Invoke-Command -ComputerName RemoteServer -ScriptBlock { Get-Module -Name DhcpServer -ListAvailable }
Save-Help -Module $m -DestinationPath "C:\SavedHelp"


# Option 2: Open a PSSession--targeted at the remote computer that is running the DhcpServer module--to get the PSModuleInfo object for the remote module, and then run Save-Help.

$s = New-PSSession -ComputerName "RemoteServer"
$m = Get-Module -PSSession $s -Name "DhcpServer" -ListAvailable
Save-Help -Module $m -DestinationPath "C:\SavedHelp"


# Option 3: Open a CIM session--targeted at the remote computer that is running the DhcpServer module--to get the PSModuleInfo object for the remote module, and then run Save-Help.

$c = New-CimSession -ComputerName "RemoteServer"
$m = Get-Module -CimSession $c -Name "DhcpServer" -ListAvailable
Save-Help -Module $m -DestinationPath "C:\SavedHelp"

En este ejemplo se muestran tres maneras diferentes de usar save-Help para guardar la ayuda del módulo DhcpServer desde un equipo cliente conectado a Internet, sin instalar el módulo DhcpServer o el rol servidor DHCP en el equipo local.

Ejemplo 2: Instalación de la ayuda para el módulo DhcpServer

# First, run Export-CliXml to export the PSModuleInfo object to a shared folder or to removable media.

$m = Get-Module -Name "DhcpServer" -ListAvailable
Export-CliXml -Path "E:\UsbFlashDrive\DhcpModule.xml" -InputObject $m

# Next, transport the removable media to a computer that has Internet access, and then import the PSModuleInfo object with Import-CliXml. Run Save-Help to save the Help for the imported DhcpServer module PSModuleInfo object.

$deserialized_m = Import-CliXml "E:\UsbFlashDrive\DhcpModule.xml"
Save-Help -Module $deserialized_m -DestinationPath "E:\UsbFlashDrive\SavedHelp"

# Finally, transport the removable media back to the computer that does not have network access, and then install the help by running Update-Help.

Update-Help -Module DhcpServer -SourcePath "E:\UsbFlashDrive\SavedHelp"

En este ejemplo se muestra cómo instalar ayuda que guardó en el ejemplo 1 del módulo DhcpServer de en un equipo que no tiene acceso a Internet.

Ejemplo 3: Guardar ayuda para todos los módulos

Save-Help -DestinationPath "\\Server01\FileShare01"

Este comando descarga los archivos de ayuda más recientes para todos los módulos del conjunto de referencia cultural de la interfaz de usuario para Windows en el equipo local. Guarda los archivos de ayuda en la carpeta \\Server01\Fileshare01.

Ejemplo 4: Guardar ayuda para un módulo en el equipo

Save-Help -Module ServerManager -DestinationPath "\\Server01\FileShare01" -Credential Domain01/Admin01

Este comando descarga los archivos de ayuda más recientes del módulo ServerManager y, a continuación, los guarda en la carpeta \\Server01\Fileshare01.

Cuando se instala un módulo en el equipo, puede escribir el nombre del módulo como valor del parámetro Module, incluso si el módulo no se importa en la sesión actual.

El comando usa el parámetro Credential para proporcionar las credenciales de un usuario que tiene permiso para escribir en el recurso compartido de archivos.

Ejemplo 5: Guardar ayuda para un módulo en otro equipo

Invoke-Command -ComputerName Server02 {Get-Module -Name CustomSQL -ListAvailable} | Save-Help -DestinationPath \\Server01\FileShare01 -Credential Domain01\Admin01

Estos comandos descargan los archivos de ayuda más recientes del módulo CustomSQL y guárdelos en la carpeta \\Server01\Fileshare01.

Dado que el módulo CustomSQL no está instalado en el equipo, la secuencia incluye un comando Invoke-Command que obtiene el objeto de módulo para el módulo CustomSQL desde el equipo Server02 y, a continuación, canaliza el objeto de módulo al cmdlet save-Help de .

Cuando un módulo no está instalado en el equipo, save-Help necesita el objeto de módulo, que incluye información sobre la ubicación de los archivos de ayuda más recientes.

Ejemplo 6: Guardar ayuda para un módulo en varios idiomas

Save-Help -Module Microsoft.PowerShell* -UICulture de-DE, en-US, fr-FR, ja-JP -DestinationPath "D:\Help"

Este comando guarda ayuda para los módulos de PowerShell Core en cuatro referencias culturales de interfaz de usuario diferentes. Los paquetes de idioma de estas configuraciones regionales no tienen que instalarse en el equipo.

save-Help puede descargar archivos de ayuda para módulos en diferentes referencias culturales de la interfaz de usuario solo cuando el propietario del módulo hace que los archivos traducidos estén disponibles en Internet.

Ejemplo 7: Guardar ayuda más de una vez cada día

Save-Help -Force -DestinationPath "\\Server3\AdminShare\Help"

Este comando guarda la ayuda de todos los módulos instalados en el equipo. El comando especifica el parámetro Force para invalidar la regla que impide que el cmdlet save-Help de descargue ayuda más de una vez en cada período de 24 horas.

El parámetro Force también invalida la restricción de 1 GB y evita la comprobación de versiones. Por lo tanto, puede descargar archivos incluso si la versión no es posterior a la versión de la carpeta de destino.

El comando usa el cmdlet Save-Help para descargar y guardar los archivos de ayuda en la carpeta especificada. El parámetro Force es necesario cuando tiene que ejecutar un comando Save-Help más de una vez al día.

Parámetros

-Credential

Especifica una credencial de usuario. Este cmdlet ejecuta el comando mediante credenciales de un usuario que tiene permiso para acceder a la ubicación del sistema de archivos especificada por el parámetro DestinationPath . Este parámetro solo es válido cuando se usa el parámetro DestinationPath o LiteralPath en el comando .

Este parámetro le permite ejecutar comandos Save-Help que usan el parámetro DestinationPath en equipos remotos. Al proporcionar credenciales explícitas, puede ejecutar el comando en un equipo remoto y acceder a un recurso compartido de archivos en un tercer equipo sin encontrar un error de acceso denegado o usar la autenticación CredSSP para delegar las credenciales.

Propiedades de parámetro

Tipo:PSCredential
Valor predeterminado:None
Admite caracteres comodín:False
DontShow:False

Conjuntos de parámetros

(All)
Posición:Named
Obligatorio:False
Valor de la canalización:False
Valor de la canalización por nombre de propiedad:False
Valor de los argumentos restantes:False

-DestinationPath

Especifica la ruta de acceso de la carpeta en la que se guardan los archivos de ayuda. No especifique un nombre de archivo ni una extensión de nombre de archivo.

Propiedades de parámetro

Tipo:

String[]

Valor predeterminado:None
Admite caracteres comodín:False
DontShow:False

Conjuntos de parámetros

Path
Posición:0
Obligatorio:True
Valor de la canalización:False
Valor de la canalización por nombre de propiedad:False
Valor de los argumentos restantes:False

-Force

Indica que este cmdlet no sigue la limitación de una vez al día, omite la comprobación de versiones y descarga archivos que superan el límite de 1 GB.

Sin este parámetro, solo se permite una comando Save- Help para cada módulo en cada período de 24 horas, las descargas se limitan a 1 GB de contenido sin comprimir por módulo y los archivos de ayuda de un módulo solo se instalan cuando son más recientes que los archivos del equipo.

El límite de una vez al día protege los servidores que hospedan los archivos de ayuda y le permite agregar un comando Save-Help al perfil de PowerShell.

Para guardar la ayuda de un módulo en varias referencias culturales de interfaz de usuario sin el parámetro Force , incluya todas las referencias culturales de la interfaz de usuario en el mismo comando, como: Save-Help -Module PSScheduledJobs -UICulture en-US, fr-FR, pt-BR

Propiedades de parámetro

Tipo:SwitchParameter
Valor predeterminado:False
Admite caracteres comodín:False
DontShow:False

Conjuntos de parámetros

(All)
Posición:Named
Obligatorio:False
Valor de la canalización:False
Valor de la canalización por nombre de propiedad:False
Valor de los argumentos restantes:False

-FullyQualifiedModule

Especifica módulos con nombres especificados en forma de objetos ModuleSpecification. Esto se describe en la sección Comentarios de Constructor moduleSpecification (Hashtable) en MSDN Library. Por ejemplo, el parámetro FullyQualifiedModule acepta un nombre de módulo especificado en el formato @{ModuleName = "modulename"; ModuleVersion = "version_number"} o @{ModuleName = "modulename"; ModuleVersion = "version_number"; Guid = "GUID"}. ModuleName y moduleVersion son necesarios, pero guid es opcional.

No se puede especificar el parámetro FullyQualifiedModule en el mismo comando que un parámetro Module .

Propiedades de parámetro

Tipo:

ModuleSpecification[]

Valor predeterminado:None
Admite caracteres comodín:False
DontShow:False

Conjuntos de parámetros

(All)
Posición:Named
Obligatorio:False
Valor de la canalización:False
Valor de la canalización por nombre de propiedad:True
Valor de los argumentos restantes:False

-LiteralPath

Especifica una ruta de acceso de la carpeta de destino. A diferencia del valor del parámetro DestinationPath, el valor del parámetro LiteralPath se usa exactamente como se escribe. Ningún carácter se interpreta como carácter comodín. Si la ruta de acceso incluye caracteres de escape, escríbala entre comillas simples. Las comillas simples indican a PowerShell que no interprete ningún carácter como secuencias de escape.

Propiedades de parámetro

Tipo:

String[]

Valor predeterminado:None
Admite caracteres comodín:False
DontShow:False
Alias:PSPath

Conjuntos de parámetros

LiteralPath
Posición:Named
Obligatorio:True
Valor de la canalización:False
Valor de la canalización por nombre de propiedad:False
Valor de los argumentos restantes:False

-Module

Especifica los módulos para los que este cmdlet descarga ayuda. Escriba uno o varios nombres de módulo o patillas de nombres en una lista separada por comas o en un archivo que tenga un nombre de módulo en cada línea. Se permite el uso de caracteres comodín. También puede canalizar objetos de módulo desde el cmdlet Get-Module a save-Help.

De forma predeterminada, Save-Help descarga la ayuda para todos los módulos que admiten ayuda actualizable y se instalan en el equipo local en una ubicación que aparece en la variable de entorno PSModulePath de .

Para guardar la ayuda de los módulos que no están instalados en el equipo, ejecute un comando Get-Module en un equipo remoto. A continuación, canalice los objetos de módulo resultantes al cmdlet save-Help de o envíe los objetos de módulo como el valor de los parámetros Module o InputObject.

Si el módulo que especifique está instalado en el equipo, puede escribir el nombre del módulo o un objeto de módulo. Si el módulo no está instalado en el equipo, debe escribir un objeto de módulo, como uno devuelto por el cmdlet Get-Module.

El parámetro Module del cmdlet Save-Help no acepta la ruta de acceso completa de un archivo de módulo o archivo de manifiesto de módulo. Para guardar la ayuda de un módulo que no está en una ubicación de PSModulePath, importe el módulo en la sesión actual antes de ejecutar el comando Save-Help.

Un valor de "*" (todos) intenta actualizar la ayuda de todos los módulos instalados en el equipo. Esto incluye módulos que no admiten ayuda actualizable. Este valor puede generar errores cuando el comando encuentra módulos que no admiten ayuda actualizable.

Propiedades de parámetro

Tipo:

PSModuleInfo[]

Valor predeterminado:None
Admite caracteres comodín:True
DontShow:False
Alias:Nombre

Conjuntos de parámetros

(All)
Posición:1
Obligatorio:False
Valor de la canalización:True
Valor de la canalización por nombre de propiedad:True
Valor de los argumentos restantes:False

-UICulture

Especifica los valores de referencia cultural de la interfaz de usuario para los que este cmdlet obtiene archivos de ayuda actualizados. Escriba uno o varios códigos de idioma, como es-ES, una variable que contenga objetos de referencia cultural o un comando que obtenga objetos de referencia cultural, como un comando Get-Culture o Get-UICulture.

No se admite el uso de caracteres comodín. No especifique un código de lenguaje parcial, como "de".

De forma predeterminada, save-Help obtiene archivos de ayuda en la referencia cultural de la interfaz de usuario establecida para Windows o su referencia cultural de reserva. Si especifica el parámetro UICulture, Save-Help busca ayuda solo para la referencia cultural de interfaz de usuario especificada, no en ninguna referencia cultural de reserva.

Propiedades de parámetro

Tipo:

CultureInfo[]

Valor predeterminado:Current UI culture
Admite caracteres comodín:False
DontShow:False

Conjuntos de parámetros

(All)
Posición:2
Obligatorio:False
Valor de la canalización:False
Valor de la canalización por nombre de propiedad:False
Valor de los argumentos restantes:False

-UseDefaultCredentials

Indica que este cmdlet ejecuta el comando, incluida la descarga web, con las credenciales del usuario actual. De forma predeterminada, el comando se ejecuta sin credenciales explícitas.

Este parámetro solo es efectivo cuando la descarga web usa NTLM, negotiate o autenticación basada en Kerberos.

Propiedades de parámetro

Tipo:SwitchParameter
Valor predeterminado:False
Admite caracteres comodín:False
DontShow:False

Conjuntos de parámetros

(All)
Posición:Named
Obligatorio:False
Valor de la canalización:False
Valor de la canalización por nombre de propiedad:False
Valor de los argumentos restantes:False

CommonParameters

Este cmdlet admite los parámetros comunes: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction y -WarningVariable. Para obtener más información, vea about_CommonParameters.

Entradas

PSModuleInfo

Puede canalizar un objeto de módulo desde el cmdlet Get-Module al parámetro Module de Save-Help.

Salidas

None

Este cmdlet no genera ningún resultado.

Notas

  • Para guardar la ayuda de los módulos en la carpeta $pshome\Modules, inicie PowerShell mediante la opción Ejecutar como administrador. Solo los miembros del grupo Administradores del equipo pueden descargar ayuda para los módulos de la carpeta $pshome\Modules.
  • La ayuda guardada para cada módulo consta de un archivo de información de ayuda (HelpInfo XML) y un archivo de gabinete (.cab) para los archivos de ayuda de cada referencia cultural de la interfaz de usuario. No es necesario extraer los archivos de ayuda del archivo de gabinete. El cmdlet Update-Help extrae los archivos de ayuda, valida el XML y, a continuación, instala los archivos de ayuda y el archivo de información de ayuda en una subcarpeta específica del lenguaje de la carpeta del módulo.
  • El cmdlet Save-Help puede guardar ayuda para los módulos que no están instalados en el equipo. Sin embargo, dado que los archivos de ayuda están instalados en la carpeta del módulo, el cmdlet Update-Help puede instalar el archivo de ayuda actualizado solo para los módulos instalados en el equipo.
  • Si save-Help no encuentra archivos de ayuda actualizados para un módulo o no encuentra archivos de ayuda actualizados en el idioma especificado, continúa silenciosamente sin mostrar un mensaje de error. Para ver qué archivos guardó el comando, especifique el parámetro Verbose .
  • Los módulos son la unidad más pequeña de ayuda actualizable. No se puede guardar la ayuda de un cmdlet determinado, solo para todos los cmdlets del módulo. Para buscar el módulo que contiene un cmdlet determinado, use la propiedad ModuleName junto con el cmdlet Get-Command, por ejemplo,
  • save-Help admite todos los módulos y los complementos de PowerShell Core. No admite ningún otro complemento.
  • Los cmdlets Update-Help y Save-Help usan los siguientes puertos para descargar archivos de ayuda: Puerto 80 para HTTP y puerto 443 para HTTPS.
  • Los cmdlets y Save-Help no se admiten en el entorno de preinstalación de Windows (Windows PE).