Save-Help
Baixa e salva os arquivos de ajuda mais recentes em um diretório de sistema de arquivos.
Syntax
Save-Help
[-DestinationPath] <String[]>
[[-Module] <PSModuleInfo[]>]
[-FullyQualifiedModule <ModuleSpecification[]>]
[[-UICulture] <CultureInfo[]>]
[-Credential <PSCredential>]
[-UseDefaultCredentials]
[-Force]
[-Scope <UpdateHelpScope>]
[<CommonParameters>]
Save-Help
-LiteralPath <String[]>
[[-Module] <PSModuleInfo[]>]
[-FullyQualifiedModule <ModuleSpecification[]>]
[[-UICulture] <CultureInfo[]>]
[-Credential <PSCredential>]
[-UseDefaultCredentials]
[-Force]
[-Scope <UpdateHelpScope>]
[<CommonParameters>]
Description
O Save-Help
cmdlet 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 que você atualize os arquivos de ajuda em computadores que não têm acesso à Internet e torna mais fácil atualizar os arquivos de ajuda em vários computadores.
No Windows PowerShell 3.0, Save-Help
funcionou 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 na comunicação remota do PowerShell, o que permite trabalhar para módulos instalados em computadores remotosSave-Help
. Também é possível salvar um objeto PSModuleInfo em disco ou mídia removível executando Export-Clixml
em um computador que não tem 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 a mídia de armazenamento removível, como uma unidade USB. A ajuda pode ser instalada no computador remoto executando Update-Help
. Esse 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 Update-Help
cmdlet . Adicione seu parâmetro SourcePath para especificar a pasta na qual você salvou os arquivos da Ajuda.
Sem parâmetros, um Save-Help
comando baixa a ajuda mais recente para todos os módulos na sessão e para módulos instalados no computador em um local listado na variável de ambiente PSModulePath . Essa ação ignora módulos que não dão suporte à Ajuda Atualizável sem aviso.
O Save-Help
cmdlet verifica a versão de todos os arquivos de ajuda na pasta de destino. Se os arquivos de ajuda mais recentes estiverem disponíveis, esse cmdlet baixará os arquivos de ajuda mais recentes da Internet e os salvará na pasta . O Save-Help
cmdlet funciona exatamente como o Update-Help
cmdlet, exceto pelo fato de salvar 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. Você não precisa extrair os arquivos de ajuda do arquivo do gabinete. O Update-Help
cmdlet 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 para módulos na pasta de instalação do PowerShell ($pshome\Modules
), inicie o PowerShell usando a opção Executar como administrador. Você precisa ser um membro do grupo Administradores no computador para baixar os arquivos de ajuda para esses 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 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: Salvar ajuda para todos os módulos
Save-Help -DestinationPath "\\Server01\FileShare01"
Esse comando baixa os arquivos de ajuda mais recentes para todos os módulos na cultura da interface do usuário definidos para o Windows no computador local. Ele salva os arquivos de ajuda na \\Server01\Fileshare01
pasta .
Exemplo 4: Salvar ajuda para um módulo no computador
Save-Help -Module ServerManager -DestinationPath "\\Server01\FileShare01" -Credential Domain01/Admin01
Esse comando baixa os arquivos de ajuda mais recentes para o módulo ServerManager e os salva na \\Server01\Fileshare01
pasta .
Quando um módulo é instalado no computador, você pode digitar o nome do módulo como o valor do parâmetro Module, ainda 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: Salvar ajuda para um módulo em um 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 e os salvam na \\Server01\Fileshare01
pasta .
Como o módulo CustomSQL não está instalado no computador, a sequência inclui um Invoke-Command
comando que obtém o objeto module para o módulo CustomSQL do computador Server02 e, em seguida, redireciona o objeto module para o Save-Help
cmdlet.
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: Salvar 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"
Esse comando salva a ajuda para os principais módulos do PowerShell em quatro culturas de interface do usuário diferentes. 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: Salvar ajuda mais de uma vez por dia
Save-Help -Force -DestinationPath "\\Server3\AdminShare\Help"
Este comando salva ajuda para todos os módulos instalados no computador. O comando especifica o parâmetro Force para substituir a regra que impede que o Save-Help
cmdlet baixe 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 que a versão não seja posterior à versão na pasta de destino.
O comando usa o Save-Help
cmdlet para baixar e salvar os arquivos de ajuda na pasta especificada.
O parâmetro Force é necessário quando você precisa executar um comando mais de uma Save-Help
vez por dia.
Parâmetros
-Credential
Especifica uma credencial de usuário. Esse 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 só é válido quando o parâmetro DestinationPath ou LiteralPath é usado no comando .
Esse parâmetro permite executar Save-Help
comandos 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.
Digite um nome de usuário, como User01 ou Domain01\User01, ou insira um objeto PSCredential gerado pelo Get-Credential
cmdlet . Se você digitar um nome de usuário, será solicitado que você insira a senha.
As credenciais são armazenadas em um objeto PSCredential e a senha é armazenada como um SecureString.
Observação
Para obter mais informações sobre a proteção de dados SecureString , consulte Quão seguro é SecureString?.
Type: | PSCredential |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | 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.
Type: | String[] |
Aliases: | Path |
Position: | 0 |
Default value: | None |
Required: | True |
Accept pipeline input: | False |
Accept wildcard characters: | 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 Save-Help
comando 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 somente quando eles são mais recentes do que os arquivos no computador.
O limite uma vez por dia protege os servidores que hospedam os arquivos de ajuda e torna prático adicionar um Save-Help
comando 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 de interface do usuário no mesmo comando, como: Save-Help -Module PSScheduledJobs -UICulture en-US, fr-FR, pt-BR
Type: | SwitchParameter |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-FullyQualifiedModule
O valor pode ser um nome de módulo, uma especificação completa do módulo ou um caminho para um arquivo de módulo.
Quando o valor é um caminho, o caminho pode ser totalmente qualificado ou relativo. Um caminho relativo é resolvido em relação ao script que contém a instrução using.
Quando o valor é uma especificação de nome ou módulo, o PowerShell pesquisa o PSModulePath para o módulo especificado.
Uma especificação de módulo é uma tabela de hash que tem as chaves a seguir.
ModuleName
- Necessário Especifica o nome do módulo.GUID
- Opcional Especifica o GUID do módulo.- Também é necessário especificar pelo menos uma das três chaves abaixo.
ModuleVersion
– Especifica uma versão mínima aceitável do módulo.MaximumVersion
– Especifica a versão máxima aceitável do módulo.RequiredVersion
– Especifica uma versão exata e necessária do módulo. Isso não pode ser usado com as outras chaves de versão.
Não é possível especificar o parâmetro FullyQualifiedModule no mesmo comando que um parâmetro Module . os dois parâmetros são mutuamente exclusivos.
Type: | ModuleSpecification[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | 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 caractere curinga. Se o caminho incluir caracteres de escape, coloque-o entre aspas simples. Aspas simples dizem ao PowerShell para não interpretar nenhum caractere como sequências de escape.
Type: | String[] |
Aliases: | PSPath, LP |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Module
Especifica os módulos para os quais esse cmdlet baixa ajuda. Insira um ou mais nomes de módulo ou patters de nome em uma lista separada por vírgulas ou em um arquivo que tenha um nome de módulo em cada linha. Caracteres curinga são permitidos. Você também pode canalizar objetos de módulo do Get-Module
cmdlet para Save-Help
.
Por padrão, Save-Help
os downloads ajudam para todos os módulos que dão suporte à Ajuda Atualizável e sã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 Get-Module
comando em um computador remoto. Em seguida, redirecione os objetos de módulo resultantes para o Save-Help
cmdlet ou envie os objetos do módulo como o valor dos parâmetros Module ou InputObject .
Se o módulo especificado estiver instalado no computador, você pode 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 Get-Module
cmdlet.
O parâmetro Module do Save-Help
cmdlet não aceita o caminho completo de um arquivo de módulo ou arquivo de manifesto do módulo. Para salvar a ajuda de um módulo que não está em um local PSModulePath , importe o módulo para a sessão atual antes de executar o Save-Help
comando.
Um valor de "*" (todos) tenta atualizar a ajuda para todos os módulos instalados no computador. Isso inclui módulos que não dão suporte à Ajuda Atualizável. Esse valor pode gerar erros quando o comando encontrar módulos que não dão suporte à Ajuda Atualizável.
Type: | PSModuleInfo[] |
Aliases: | Name |
Position: | 1 |
Default value: | None |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | True |
-Scope
Esse parâmetro não faz nada neste cmdlet.
Type: | UpdateHelpScope |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-UICulture
Especifica 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 linguagem, como es-ES
, uma variável que contém objetos de cultura ou um comando que obtém objetos de cultura, como um Get-Culture
comando ou Get-UICulture
.
Caracteres curinga não são permitidos. Não especifique um código de idioma parcial, como "de".
Por padrão, Save-Help
obtém arquivos de ajuda na cultura da interface do usuário definida para o Windows ou 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 nenhuma cultura de fallback.
Type: | CultureInfo[] |
Position: | 2 |
Default value: | Current UI culture |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | 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 é válido somente quando o download da Web usa autenticação NTLM, de negociação ou baseada em Kerberos.
Type: | SwitchParameter |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Entradas
Você pode canalizar um objeto de módulo para este cmdlet.
Saídas
None
Esse cmdlet não retorna nenhuma saída.
Observações
- Para salvar a ajuda para módulos na pasta $pshome\Modules, inicie o PowerShell usando a opção Executar como administrador. Somente 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. Você não precisa extrair os arquivos de ajuda do arquivo do gabinete. O
Update-Help
cmdlet 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
Save-Help
cmdlet 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 do módulo, oUpdate-Help
cmdlet pode instalar o arquivo de ajuda atualizado somente para módulos instalados no computador. - Se
Save-Help
não for possível encontrar arquivos de ajuda atualizados para um módulo ou não 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 Verbose . - Os módulos são a menor unidade da ajuda atualizável. Você não pode salvar a ajuda para um cmdlet específico, somente para todos os cmdlets no módulo. Para localizar o módulo que contém um cmdlet específico, use a propriedade ModuleName junto com o
Get-Command
cmdlet , por exemplo,(Get-Command \<cmdlet-name\>).ModuleName
Save-Help
dá suporte a todos os módulos e aos principais snap-ins do PowerShell. Ele não dá suporte a nenhum outro snap-in.- Os
Update-Help
cmdlets eSave-Help
usam as seguintes portas para baixar arquivos de ajuda: Porta 80 para HTTP e porta 443 para HTTPS. - Os
Update-Help
cmdlets eSave-Help
não têm suporte no Windows PE (Ambiente de Pré-Instalação do Windows).