Partilhar via


Save-Help

Baixa e salva os arquivos de ajuda mais recentes em um diretório do sistema de arquivos.

Sintaxe

Path (Predefinição)

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

O cmdlet Save-Help baixa os arquivos de ajuda mais recentes para módulos do PowerShell e os salva em um diretório que você especificar. Esse recurso permite atualizar os arquivos de ajuda em computadores que não têm acesso à Internet e facilita a atualização dos arquivos de ajuda em vários computadores.

No Windows PowerShell 3.0, Save-Help funcionava apenas para módulos instalados no computador local. Embora fosse possível importar um módulo de um computador remoto ou obter uma referência a um objeto PSModuleInfo de um computador remoto usando a comunicação remota do PowerShell, a propriedade HelpInfoUri não foi preservada e Save-Help não funcionaria para a Ajuda do módulo remoto.

No Windows PowerShell 4.0, a propriedade HelpInfoUri é preservada sobre a comunicação remota do PowerShell, o que permite que Save-Help funcionem para módulos instalados em computadores remotos. Também é possível salvar um objeto de PSModuleInfo em disco ou mídia removível executando Export-Clixml em um computador que não tenha acesso à Internet, importar o objeto em um computador que tenha acesso à Internet e, em seguida, executar Save-Help no objeto PSModuleInfo . A ajuda salva pode ser transportada para o computador remoto usando uma mídia de armazenamento removível, como uma unidade USB. A ajuda pode ser instalada no computador remoto executando Update-Help. Este processo pode ser usado para instalar ajuda em computadores que não têm qualquer tipo de acesso à rede.

Para instalar arquivos de ajuda salvos, execute o cmdlet Update-Help. Adicione seu parâmetro SourcePath para especificar a pasta na qual você salvou os arquivos de Ajuda.

Sem parâmetros, um comando Save-Help baixa a ajuda mais recente para todos os módulos da sessão e para módulos instalados no computador em um local listado na variável de ambiente PSModulePath . Esta ação ignora módulos que não suportam Ajuda Atualizável sem aviso.

O cmdlet Save-Help verifica a versão de todos os arquivos de ajuda na pasta de destino. Se estiverem disponíveis ficheiros de ajuda mais recentes, este cmdlet transfere os ficheiros de ajuda mais recentes da Internet e, em seguida, guarda-os na pasta. O cmdlet Save-Help funciona exatamente como o cmdlet Update-Help, exceto que ele salva os arquivos de gabinete (.cab) baixados, em vez de extrair os arquivos de ajuda dos arquivos de gabinete e instalá-los no computador.

A ajuda salva para cada módulo consiste em um arquivo de informações de ajuda (HelpInfo XML) e um arquivo de gabinete (.cab) para os arquivos de ajuda de cada cultura da interface do usuário. Não é necessário extrair os arquivos de ajuda do arquivo de gabinete. O cmdlet Update-Help extrai os arquivos de ajuda, valida o XML para segurança e instala os arquivos de ajuda e o arquivo de informações de ajuda em uma subpasta específica do idioma da pasta do módulo.

Para salvar os arquivos de ajuda dos módulos na pasta de instalação do PowerShell ($pshome\Modules), inicie o PowerShell usando a opção Executar como administrador. Tem de ser membro do grupo Administradores no computador para transferir os ficheiros de ajuda para estes módulos.

Este cmdlet foi introduzido no Windows PowerShell 3.0.

Exemplos

Exemplo 1: Salvar a ajuda para o 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"

Este exemplo mostra três maneiras diferentes de usar Save-Help para salvar a ajuda para o módulo DhcpServer de um computador cliente conectado à Internet, sem instalar o módulo DhcpServer ou a função Servidor DHCP no computador local.

Exemplo 2: Instalar a ajuda para o 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"

Este exemplo mostra como instalar a ajuda salva no Exemplo 1 para o módulo DhcpServer em um computador que não tem acesso à Internet.

Exemplo 3: Guardar ajuda para todos os módulos

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

Este comando baixa os arquivos de ajuda mais recentes para todos os módulos no conjunto de cultura da interface do usuário para Windows no computador local. Ele salva os arquivos de ajuda na pasta \\Server01\Fileshare01.

Exemplo 4: Guardar ajuda para um módulo no computador

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

Este comando baixa os arquivos de ajuda mais recentes para o módulo ServerManager e os salva na pasta \\Server01\Fileshare01.

Quando um módulo é instalado no computador, você pode digitar o nome do módulo como o valor do parâmetro Module, mesmo que o módulo não seja importado para a sessão atual.

O comando usa o parâmetro Credential para fornecer as credenciais de um usuário que tem permissão para gravar no compartilhamento de arquivos.

Exemplo 5: Guardar ajuda para um módulo num computador diferente

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

Esses comandos baixam os arquivos de ajuda mais recentes para o módulo CustomSQL do e os salvam na pasta \\Server01\Fileshare01.

Como o módulo CustomSQL não está instalado no computador, a sequência inclui um comando Invoke-Command que obtém o objeto de módulo para o módulo CustomSQL do computador Server02 e, em seguida, canaliza o objeto de módulo para o cmdlet Save-Help.

Quando um módulo não está instalado no computador, Save-Help precisa do objeto module, que inclui informações sobre o local dos arquivos de ajuda mais recentes.

Exemplo 6: Guardar ajuda para um módulo em vários idiomas

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

Este comando salva a ajuda para os módulos PowerShell Core em quatro culturas diferentes de interface do usuário. Os pacotes de idiomas para essas localidades não precisam ser instalados no computador.

Save-Help pode baixar arquivos de ajuda para módulos em diferentes culturas de interface do usuário somente quando o proprietário do módulo disponibiliza os arquivos traduzidos na Internet.

Exemplo 7: Guardar ajuda mais do que uma vez por dia

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

Este comando salva a ajuda de todos os módulos instalados no computador. O comando especifica o parâmetro Force para substituir a regra que impede que o cmdlet Save-Help baixe a ajuda mais de uma vez em cada período de 24 horas.

O parâmetro Force também substitui a restrição de 1 GB e contorna a verificação de versão. Portanto, você pode baixar arquivos mesmo se a versão não for posterior à versão na pasta de destino.

O comando usa o cmdlet Save-Help para baixar e salvar os arquivos de ajuda na pasta especificada. O parâmetro Force é necessário quando você precisa executar um comando Save-Help mais de uma vez por dia.

Parâmetros

-Credential

Especifica uma credencial de usuário. Este cmdlet executa o comando usando credenciais de um usuário que tem permissão para acessar o local do sistema de arquivos especificado pelo parâmetro DestinationPath. Esse parâmetro é válido somente quando o DestinationPath ou parâmetro LiteralPath é usado no comando.

Esse parâmetro permite executar comandos Save-Help que usam o parâmetro DestinationPath em computadores remotos. Ao fornecer credenciais explícitas, você pode executar o comando em um computador remoto e acessar um compartilhamento de arquivos em um terceiro computador sem encontrar um erro de acesso negado ou usar a autenticação CredSSP para delegar credenciais.

Propriedades dos parâmetros

Tipo:PSCredential
Default value:None
Suporta carateres universais:False
NãoMostrar:False

Conjuntos de parâmetros

(All)
Position:Named
Obrigatório:False
Valor do pipeline:False
Valor do pipeline por nome de propriedade:False
Valor dos restantes argumentos:False

-DestinationPath

Especifica o caminho da pasta na qual os arquivos de ajuda são salvos. Não especifique um nome de arquivo ou extensão de nome de arquivo.

Propriedades dos parâmetros

Tipo:

String[]

Default value:None
Suporta carateres universais:False
NãoMostrar:False

Conjuntos de parâmetros

Path
Position:0
Obrigatório:True
Valor do pipeline:False
Valor do pipeline por nome de propriedade:False
Valor dos restantes argumentos:False

-Force

Indica que esse cmdlet não segue a limitação de uma vez por dia, ignora a verificação de versão e baixa arquivos que excedem o limite de 1 GB.

Sem esse parâmetro, apenas um comando Save-Help para cada módulo é permitido em cada período de 24 horas, os downloads são limitados a 1 GB de conteúdo não compactado por módulo e os arquivos de ajuda para um módulo são instalados apenas quando são mais recentes do que os arquivos no computador.

O limite de uma vez por dia protege os servidores que hospedam os arquivos de ajuda e torna prático adicionar um comando Salvar Ajuda ao seu perfil do PowerShell.

Para salvar a ajuda de um módulo em várias culturas de interface do usuário sem o parâmetro Force, inclua todas as culturas da interface do usuário no mesmo comando, como: Save-Help -Module PSScheduledJobs -UICulture en-US, fr-FR, pt-BR

Propriedades dos parâmetros

Tipo:SwitchParameter
Default value:False
Suporta carateres universais:False
NãoMostrar:False

Conjuntos de parâmetros

(All)
Position:Named
Obrigatório:False
Valor do pipeline:False
Valor do pipeline por nome de propriedade:False
Valor dos restantes argumentos:False

-FullyQualifiedModule

Especifica módulos com nomes especificados na forma de objetos ModuleSpecification. Isso é descrito na seção Comentários do Construtor ModuleSpecification (Hashtable) na biblioteca MSDN. Por exemplo, o parâmetro FullyQualifiedModule aceita um nome de módulo especificado no formato @{ModuleName = "modulename"; ModuleVersion = "version_number"} ou @{ModuleName = "modulename"; ModuleVersion = "version_number"; Guid = "GUID"}. ModuleName e ModuleVersion são necessários, mas Guid é opcional.

Não é possível especificar o parâmetro FullyQualifiedModule no mesmo comando que um parâmetro Module.

Propriedades dos parâmetros

Tipo:

ModuleSpecification[]

Default value:None
Suporta carateres universais:False
NãoMostrar:False

Conjuntos de parâmetros

(All)
Position:Named
Obrigatório:False
Valor do pipeline:False
Valor do pipeline por nome de propriedade:True
Valor dos restantes argumentos:False

-LiteralPath

Especifica um caminho da pasta de destino. Ao contrário do valor do parâmetro DestinationPath, o valor do parâmetro LiteralPath é usado exatamente como é digitado. Nenhum caractere é interpretado como um caractere curinga. Se o caminho incluir caracteres de escape, coloque-o entre aspas simples. Aspas simples indicam ao PowerShell para não interpretar quaisquer caracteres como sequências de escape.

Propriedades dos parâmetros

Tipo:

String[]

Default value:None
Suporta carateres universais:False
NãoMostrar:False
Aliases:PSPath

Conjuntos de parâmetros

LiteralPath
Position:Named
Obrigatório:True
Valor do pipeline:False
Valor do pipeline por nome de propriedade:False
Valor dos restantes argumentos:False

-Module

Especifica os módulos para os quais este cmdlet faz o download da ajuda. Insira um ou mais nomes de módulos ou padrões de nomes em uma lista separada por vírgulas ou em um arquivo que tenha um nome de módulo em cada linha. Caracteres coringa são permitidos. Você também pode canalizar objetos de módulo do cmdlet Get-Module para Save-Help.

Por padrão, Save-Help ajuda de downloads para todos os módulos que suportam a Ajuda Atualizável e estão instalados no computador local em um local listado na variável de ambiente PSModulePath.

Para salvar a ajuda para módulos que não estão instalados no computador, execute um comando Get-Module em um computador remoto. Em seguida, canalize os objetos de módulo resultantes para o cmdlet Save-Help ou envie os objetos de módulo como o valor dos parâmetros Module ou InputObject.

Se o módulo especificado estiver instalado no computador, você poderá inserir o nome do módulo ou um objeto de módulo. Se o módulo não estiver instalado no computador, você deverá inserir um objeto de módulo, como um retornado pelo cmdlet Get-Module .

O parâmetro Module do cmdlet Save-Help não aceita o caminho completo de um arquivo de módulo ou arquivo de manifesto de módulo. Para salvar a ajuda de um módulo que não esteja em um local PSModulePath , importe o módulo para a sessão atual antes de executar o comando Save-Help.

Um valor de "*" (todos) tenta atualizar a ajuda para todos os módulos instalados no computador. Isso inclui módulos que não suportam a Ajuda Atualizável. Esse valor pode gerar erros quando o comando encontra módulos que não suportam a Ajuda atualizável.

Propriedades dos parâmetros

Tipo:

PSModuleInfo[]

Default value:None
Suporta carateres universais:True
NãoMostrar:False
Aliases:Nome

Conjuntos de parâmetros

(All)
Position:1
Obrigatório:False
Valor do pipeline:True
Valor do pipeline por nome de propriedade:True
Valor dos restantes argumentos:False

-UICulture

Especifica os valores de cultura da interface do usuário para os quais esse cmdlet obtém arquivos de ajuda atualizados. Insira um ou mais códigos de idioma, como es-ES, uma variável que contém objetos de cultura ou um comando que obtém objetos de cultura, como um comando Get-Culture ou Get-UICulture.

Caracteres curinga não são permitidos. Não especifique um código de idioma parcial, como "de".

Por padrão, Salvar Ajuda obtém arquivos de ajuda na cultura da interface do usuário definida para o Windows ou em sua cultura de fallback. Se você especificar o parâmetro UICulture, Save-Help procurará ajuda apenas para a cultura de interface do usuário especificada, não em qualquer cultura de fallback.

Propriedades dos parâmetros

Tipo:

CultureInfo[]

Default value:Current UI culture
Suporta carateres universais:False
NãoMostrar:False

Conjuntos de parâmetros

(All)
Position:2
Obrigatório:False
Valor do pipeline:False
Valor do pipeline por nome de propriedade:False
Valor dos restantes argumentos:False

-UseDefaultCredentials

Indica que esse cmdlet executa o comando, incluindo o download da Web, com as credenciais do usuário atual. Por padrão, o comando é executado sem credenciais explícitas.

Esse parâmetro só é efetivo quando o download da Web usa NTLM, negociação ou autenticação baseada em Kerberos.

Propriedades dos parâmetros

Tipo:SwitchParameter
Default value:False
Suporta carateres universais:False
NãoMostrar:False

Conjuntos de parâmetros

(All)
Position:Named
Obrigatório:False
Valor do pipeline:False
Valor do pipeline por nome de propriedade:False
Valor dos restantes argumentos:False

CommonParameters

Este cmdlet suporta os parâmetros comuns: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction e -WarningVariable. Para obter mais informações, consulte about_CommonParameters.

Entradas

PSModuleInfo

Você pode canalizar um objeto de módulo do cmdlet Get-Module para o parâmetro Module de Save-Help.

Saídas

None

Este cmdlet não gera nenhuma saída.

Notas

  • Para salvar a ajuda para módulos na pasta $pshome\Modules, inicie o PowerShell usando a opção Executar como administrador. Somente os membros do grupo Administradores no computador podem baixar a ajuda para módulos na pasta $pshome\Modules.
  • A ajuda salva para cada módulo consiste em um arquivo de informações de ajuda (HelpInfo XML) e um arquivo de gabinete (.cab) para os arquivos de ajuda de cada cultura da interface do usuário. Não é necessário extrair os arquivos de ajuda do arquivo de gabinete. O cmdlet Update-Help extrai os arquivos de ajuda, valida o XML e instala os arquivos de ajuda e o arquivo de informações de ajuda em uma subpasta específica do idioma da pasta do módulo.
  • O cmdlet Save-Help pode salvar a ajuda para módulos que não estão instalados no computador. No entanto, como os arquivos de ajuda são instalados na pasta module, o cmdlet Update-Help pode instalar o arquivo de ajuda atualizado somente para módulos instalados no computador.
  • Se Salvar Ajuda não conseguir encontrar arquivos de ajuda atualizados para um módulo ou não conseguir encontrar arquivos de ajuda atualizados no idioma especificado, ele continuará silenciosamente sem exibir uma mensagem de erro. Para ver quais arquivos foram salvos pelo comando, especifique o parâmetro detalhado.
  • Os módulos são a menor unidade de ajuda atualizável. Não é possível salvar a ajuda para um cmdlet específico, apenas para todos os cmdlets no módulo. Para localizar o módulo que contém um cmdlet específico, use a propriedade ModuleName juntamente com o cmdlet Get-Command, por exemplo, (Get-Command \<cmdlet-name\>).ModuleName
  • Save-Help suporta todos os módulos e os snap-ins do PowerShell Core. Não suporta quaisquer outros snap-ins.
  • Os cmdlets Update-Help e Save-Help usam as seguintes portas para baixar arquivos de ajuda: Porta 80 para HTTP e porta 443 para HTTPS.
  • Os cmdlets Update-Help e Save-Help não são suportados no Ambiente de Pré-instalação do Windows (Windows PE).