Update-Help
Transfere e instala os ficheiros de ajuda mais recentes no seu computador.
Sintaxe
Update-Help
[[-Module] <String[]>]
[-FullyQualifiedModule <ModuleSpecification[]>]
[[-SourcePath] <String[]>]
[-Recurse]
[[-UICulture] <CultureInfo[]>]
[-Credential <PSCredential>]
[-UseDefaultCredentials]
[-Force]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Update-Help
[[-Module] <String[]>]
[-FullyQualifiedModule <ModuleSpecification[]>]
[-LiteralPath <String[]>]
[-Recurse]
[[-UICulture] <CultureInfo[]>]
[-Credential <PSCredential>]
[-UseDefaultCredentials]
[-Force]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Description
O cmdlet Update-Help
baixa os arquivos de ajuda mais recentes para os módulos do PowerShell e os instala em seu computador. Não é necessário reiniciar o PowerShell para tornar a alteração efetiva. Você pode usar o cmdlet Get-Help
para exibir os novos arquivos de ajuda imediatamente.
Update-Help
verifica a versão dos ficheiros de ajuda no computador. Se você não tiver arquivos de ajuda para um módulo ou se os arquivos de ajuda estiverem desatualizados, Update-Help
baixará os arquivos de ajuda mais recentes. Os ficheiros de ajuda podem ser descarregados e instalados a partir da Internet ou de uma partilha de ficheiros.
Sem parâmetros, o Update-Help
atualiza os arquivos de ajuda para os módulos na sessão e para todos os módulos instalados que suportam a Ajuda Atualizável. Os módulos instalados, mas não carregados na sessão atual, estão incluídos. Os módulos do PowerShell são armazenados em um local listado na variável de ambiente $env:PSModulePath
.
Para obter mais informações, consulte about_Updatable_Help.
Você pode usar o parâmetro Module para atualizar arquivos de ajuda para um módulo específico. Use o parâmetro UICulture para baixar arquivos de ajuda em vários idiomas e localidades.
Você pode usar Update-Help
em computadores que não estão conectados à Internet. Use o cmdlet Save-Help
para baixar arquivos de ajuda da Internet e salvá-los em um local do sistema de arquivos, como uma pasta compartilhada ou um diretório do sistema de arquivos. Em seguida, use o parâmetro SourcePath de Update-Help
para baixar os arquivos de ajuda atualizados de um local do sistema de arquivos e instalá-los no computador.
Você pode automatizar as atualizações de ajuda adicionando o cmdlet Update-Help
ao seu perfil do PowerShell. Por padrão, Update-Help
é executado apenas uma vez por dia em cada computador. Para substituir o limite de uma vez por dia, use o parâmetro Force.
O cmdlet Update-Help
foi introduzido no Windows PowerShell 3.0.
Importante
Update-Help
requer privilégios administrativos.
Você deve ser membro do grupo Administradores no computador para atualizar os arquivos de ajuda para os módulos principais do PowerShell.
Para baixar ou atualizar os arquivos de ajuda para módulos no diretório de instalação do PowerShell ($PSHOME\Modules
), incluindo os módulos principais do PowerShell, inicie o PowerShell usando a opção Executar como administrador.
Por exemplo: Start-Process powershell.exe -Verb RunAs
.
Você também pode atualizar arquivos de ajuda usando o item de menu Atualizar Ajuda do Windows PowerShell no menu Ajuda no ISE (Ambiente de Script Integrado) do Windows PowerShell.
O item Atualizar a Ajuda do Windows PowerShell executa um cmdlet Update-Help
sem parâmetros.
Para atualizar a ajuda para módulos no diretório $PSHOME
, inicie o Windows PowerShell ISE usando a opção Executar como administrador.
Exemplos
Exemplo 1: Atualizar arquivos de ajuda para todos os módulos
O cmdlet Update-Help
atualiza os arquivos de ajuda para os módulos instalados que oferecem suporte à Ajuda atualizável. A linguagem de cultura da interface do usuário (UI) é definida no sistema operacional.
Update-Help
Exemplo 2: Atualizar arquivos de ajuda para módulos especificados
O cmdlet Update-Help
atualiza os arquivos de ajuda somente para nomes de módulo que começam com Microsoft.PowerShell.
Update-Help -Module Microsoft.PowerShell*
Exemplo 3: Atualizar arquivos de ajuda para idiomas diferentes
O cmdlet Update-Help
atualiza os arquivos de ajuda em japonês (ja-JP) e inglês (en-US) para todos os módulos.
Se um módulo não fornecer arquivos de ajuda para uma cultura de interface do usuário especificada, uma mensagem de erro será exibida para o módulo e a cultura da interface do usuário. Neste exemplo, a mensagem de erro indica que os ja-JP arquivos de ajuda não foram encontrados para o módulo Microsoft.PowerShell.Utility.
Update-Help -UICulture ja-JP, en-US
Update-Help : Failed to update Help for the module(s) 'Microsoft.PowerShell.Utility' with UI culture(s) {ja-JP}
No UI culture was found that matches the following pattern: ja-JP.
Exemplo 4: Atualizar ficheiros de ajuda automaticamente
Este exemplo cria um trabalho agendado que atualiza a ajuda para todos os módulos todos os dias às 3h00.
$jobParams = @{
Name = 'UpdateHelpJob'
Credential = 'Domain01\User01'
ScriptBlock = '{Update-Help}'
Trigger = (New-JobTrigger -Daily -At "3 AM")
}
Register-ScheduledJob @jobParams
Id Name JobTriggers Command Enabled
-- ---- ----------- ------- -------
1 UpdateHelpJob 1 Update-Help True
O cmdlet Register-ScheduledJob
cria um trabalho agendado que executa um comando Update-Help
. O comando usa o parâmetro Credential para executar Update-Help
usando as credenciais de um membro do grupo Administradores no computador. O valor do parâmetro Trigger é um comando New-JobTrigger
que cria um gatilho de trabalho que inicia o trabalho todos os dias às 3h00.
Para executar o comando Register-ScheduledJob
, inicie o PowerShell usando a opção Executar como administrador opção. O PowerShell solicita a senha do usuário especificado no parâmetro Credential. As credenciais são armazenadas com o trabalho agendado. Você não será avisado quando o trabalho for executado.
Você pode usar o cmdlet Get-ScheduledJob
para exibir o trabalho agendado, usar o cmdlet Set-ScheduledJob
para alterá-lo e usar o cmdlet Unregister-ScheduledJob
para excluí-lo. Você também pode exibir e gerenciar o trabalho agendado no Agendador de Tarefas no seguinte caminho:
Task Scheduler Library\Microsoft\Windows\PowerShell\ScheduledJobs
.
Exemplo 5: Atualizar ficheiros de ajuda em vários computadores a partir de uma partilha de ficheiros
Neste exemplo, os arquivos de ajuda atualizados são baixados da Internet e salvos em um compartilhamento de arquivos. São necessárias credenciais de utilizador com permissões para aceder à partilha de ficheiros e instalar atualizações. Quando um compartilhamento de arquivos é usado, é possível atualizar computadores que estão protegidos por firewalls ou não estão conectados à Internet.
PS> Save-Help -DestinationPath \\Server01\Share\PSHelp -Credential Domain01\Admin01
PS> Invoke-Command -ComputerName (Get-Content Servers.txt) -ScriptBlock {
Update-Help -SourcePath \\Server01\Share\PSHelp -Credential Domain01\Admin01
}
O comando Save-Help
baixa os arquivos de ajuda mais recentes para todos os módulos que suportam a Ajuda atualizável.
O parâmetro DestinationPath salva os arquivos no compartilhamento de arquivos \\Server01\Share\PSHelp
. O parâmetro Credential especifica um usuário que tem permissão para acessar o compartilhamento de arquivos.
O cmdlet Invoke-Command
executa comandos de Update-Help
remota em vários computadores. O parâmetro ComputerName obtém uma lista de computadores remotos do arquivo Servers.txt. O parâmetro ScriptBlock executa o comando Update-Help
e usa o parâmetro SourcePath para especificar o compartilhamento de arquivos que contém os arquivos de ajuda atualizados. O parâmetro Credential especifica um usuário que pode acessar o compartilhamento de arquivos e executar o comando Update-Help
remoto.
Exemplo 6: Obter uma lista de arquivos de ajuda atualizados
O cmdlet Update-Help
atualiza a ajuda para um módulo especificado. O cmdlet usa o parâmetro Verbose common para exibir a lista de arquivos de ajuda que foram atualizados. Você pode usar detalhado para exibir a saída de todos os arquivos de ajuda ou arquivos de ajuda de um módulo específico.
Sem o parâmetro Verbose, Update-Help
não exibe os resultados do comando. A saída do parâmetro Verbose é útil para verificar se os arquivos de ajuda foram atualizados ou se a versão mais recente está instalada.
Update-Help -Module Microsoft.PowerShell.Utility -Verbose
Exemplo 7: Encontrar módulos que suportam a Ajuda Atualizável
Este exemplo lista os módulos que suportam a Ajuda Atualizável. O comando usa a propriedade Update-Help
é executado.
Get-Module -ListAvailable | Where-Object -Property HelpInfoUri
Directory: C:\program files\powershell\6\Modules
ModuleType Version Name PSEdition ExportedCommands
---------- ------- ---- --------- ----------------
Manifest 6.1.0.0 CimCmdlets Core {Get-CimAssociatedInstance... }
Manifest 1.2.2.0 Microsoft.PowerShell.Archive Desk {Compress-Archive... }
Manifest 6.1.0.0 Microsoft.PowerShell.Diagnostics Core {Get-WinEvent, New-WinEvent}
Directory: C:\WINDOWS\system32\WindowsPowerShell\v1.0\Modules
ModuleType Version Name PSEdition ExportedCommands
---------- ------- ---- --------- ----------------
Manifest 2.0.1.0 Appx Core,Desk {Add-AppxPackage, ... }
Script 1.0.0.0 AssignedAccess Core,Desk {Clear-AssignedAccess, ... }
Manifest 1.0.0.0 BitLocker Core,Desk {Unlock-BitLocker, ... }
Exemplo 8: Inventário de arquivos de ajuda atualizados
Neste exemplo, o script Get-UpdateHelpVersion.ps1
cria um inventário dos arquivos de Ajuda atualizáveis para cada módulo e seus números de versão.
O script identifica módulos que suportam a Ajuda atualizável usando a propriedade HelpInfoUri dos módulos. Para módulos que suportam a Ajuda Atualizável, o script procura e analisa o arquivo de informações de ajuda (*helpinfo.xml) para encontrar o número da versão mais recente.
O script usa a classe PSCustomObject e uma tabela de hash para criar um objeto de saída personalizado.
# Get-UpdateHelpVersion.ps1
Param(
[parameter(Mandatory=$False)]
[String[]]
$Module
)
$HelpInfoNamespace = @{helpInfo='https://schemas.microsoft.com/powershell/help/2010/05'}
if ($Module) { $Modules = Get-Module $Module -ListAvailable | where {$_.HelpInfoUri} }
else { $Modules = Get-Module -ListAvailable | where {$_.HelpInfoUri} }
foreach ($mModule in $Modules)
{
$mDir = $mModule.ModuleBase
if (Test-Path $mdir\*helpinfo.xml)
{
$mName=$mModule.Name
$mNodes = dir $mdir\*helpinfo.xml -ErrorAction SilentlyContinue |
Select-Xml -Namespace $HelpInfoNamespace -XPath "//helpInfo:UICulture"
foreach ($mNode in $mNodes)
{
$mCulture=$mNode.Node.UICultureName
$mVer=$mNode.Node.UICultureVersion
[PSCustomObject]@{"ModuleName"=$mName; "Culture"=$mCulture; "Version"=$mVer}
}
}
}
ModuleName Culture Version
---------- ------- -------
ActiveDirectory en-US 3.0.0.0
ADCSAdministration en-US 3.0.0.0
ADCSDeployment en-US 3.0.0.0
ADDSDeployment en-US 3.0.0.0
ADFS en-US 3.0.0.0
Parâmetros
-Confirm
Solicita confirmação antes de executar o cmdlet.
Tipo: | SwitchParameter |
Aliases: | cf |
Position: | Named |
Default value: | False |
Necessário: | False |
Aceitar entrada de pipeline: | False |
Aceitar carateres universais: | False |
-Credential
Especifica as credenciais de um usuário que tem permissão para acessar o local do sistema de arquivos especificado pelo SourcePath. Esse parâmetro é válido somente quando o SourcePath ou parâmetro LiteralPath é usado no comando.
O parâmetro Credential permite executar comandos Update-Help
com o parâmetro SourcePath 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.
Tipo: | PSCredential |
Position: | Named |
Default value: | None |
Necessário: | False |
Aceitar entrada de pipeline: | False |
Aceitar carateres universais: | 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, Update-Help
é executado apenas uma vez 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 só são instalados quando são mais recentes do que os arquivos existentes 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 Update-Help
ao seu perfil do PowerShell sem incorrer no custo de recursos de conexões ou downloads repetidos.
Para atualizar a ajuda para 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:
Update-Help -Module PSScheduledJobs -UICulture en-US, fr-FR, pt-BR
Tipo: | SwitchParameter |
Position: | Named |
Default value: | None |
Necessário: | False |
Aceitar entrada de pipeline: | False |
Aceitar carateres universais: | False |
-FullyQualifiedModule
Especifica módulos com nomes que são especificados na forma de objetos ModuleSpecification . Esses módulos são descritos na seção Observações do Construtor ModuleSpecification (Hashtable).
Por exemplo, o parâmetro
@{ModuleName = "modulename"; ModuleVersion = "version_number"}
quer
@{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.
Tipo: | ModuleSpecification[] |
Position: | Named |
Default value: | None |
Necessário: | False |
Aceitar entrada de pipeline: | True |
Aceitar carateres universais: | False |
-LiteralPath
Especifica a pasta para arquivos de ajuda atualizados em vez de baixá-los da Internet. Use este parâmetro ou SourcePath se tiver usado o cmdlet Save-Help
para baixar arquivos de ajuda para um diretório.
Você pode canalizar um objeto de diretório, como dos cmdlets Get-Item
ou Get-ChildItem
, para Update-Help
.
Ao contrário do valor de SourcePath, o valor de LiteralPath é usado exatamente como é digitado. Nenhum caractere é interpretado como caracteres 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.
Tipo: | String[] |
Aliases: | PSPath |
Position: | Named |
Default value: | None |
Necessário: | False |
Aceitar entrada de pipeline: | True |
Aceitar carateres universais: | False |
-Module
Ajuda de atualizações para os módulos especificados. Insira um ou mais nomes de módulo ou padrões de nome em uma lista separada por vírgulas ou especifique um arquivo que liste um nome de módulo em cada linha. Caracteres curinga são permitidos. Você pode canalizar módulos do cmdlet Get-Module
para o cmdlet Update-Help
.
Os módulos especificados devem ser instalados no computador, mas não precisam ser importados para a sessão atual. Você pode especificar qualquer módulo na sessão ou qualquer módulo instalado em um local listado na variável de ambiente $env:PSModulePath
.
Um valor de *
(todas) tenta atualizar a ajuda para todos os módulos instalados no computador.
Os módulos que não suportam a Ajuda Atualizável estão incluídos. Esse valor pode gerar erros quando o comando encontra módulos que não suportam a Ajuda atualizável. Em vez disso, execute Update-Help
sem parâmetros.
O parâmetro Module do cmdlet Update-Help
não aceita o caminho completo de um arquivo de módulo ou de manifesto do módulo. Para atualizar a ajuda para um módulo que não está em um local $env:PSModulePath
, importe o módulo para a sessão atual antes de executar o comando Update-Help
.
Tipo: | String[] |
Aliases: | Name |
Position: | 0 |
Default value: | None |
Necessário: | False |
Aceitar entrada de pipeline: | True |
Aceitar carateres universais: | True |
-Recurse
Executa uma pesquisa recursiva para arquivos de ajuda no diretório especificado. Esse parâmetro é válido somente quando o comando usa o parâmetro SourcePath.
Tipo: | SwitchParameter |
Position: | Named |
Default value: | None |
Necessário: | False |
Aceitar entrada de pipeline: | False |
Aceitar carateres universais: | False |
-SourcePath
Especifica uma pasta do sistema de arquivos onde Update-Help
recebe arquivos de ajuda atualizados, em vez de baixá-los da Internet. Insira o caminho de uma pasta. Não especifique um nome de arquivo ou extensão de nome de arquivo. Você pode canalizar uma pasta, como uma dos cmdlets Get-Item
ou Get-ChildItem
, para Update-Help
.
Por padrão, Update-Help
baixa arquivos de ajuda atualizados da Internet. Use SourcePath quando tiver usado o cmdlet Save-Help
para baixar arquivos de ajuda atualizados para um diretório.
Para especificar um valor padrão para SourcePath , vá para de Diretiva de Grupo, de Configuração do Computador e Definir o caminho de origem padrão paraUpdate-Help . Esta definição de Política de Grupo impede que os utilizadores utilizem Update-Help
para transferir ficheiros de ajuda da Internet.
Para obter mais informações, consulte about_Group_Policy_Settings.
Tipo: | String[] |
Position: | 1 |
Default value: | None |
Necessário: | False |
Aceitar entrada de pipeline: | False |
Aceitar carateres universais: | False |
-UICulture
Especifica os valores de cultura da interface do usuário que Update-Help
usa para obter 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 e você não pode enviar um código de idioma parcial, como de.
Por padrão, Update-Help
obtém arquivos de ajuda na cultura da interface do usuário definida para o sistema operacional. Se você especificar o parâmetro UICulture, Update-Help
procurará ajuda apenas para a cultura de interface do usuário especificada.
Os comandos que usam o parâmetro UICulture são bem-sucedidos somente quando o módulo fornece arquivos de ajuda para a cultura da interface do usuário especificada. Se o comando falhar porque a cultura de interface do usuário especificada não é suportada, uma mensagem de erro será exibida.
Tipo: | CultureInfo[] |
Position: | 2 |
Default value: | None |
Necessário: | False |
Aceitar entrada de pipeline: | False |
Aceitar carateres universais: | False |
-UseDefaultCredentials
Indica que Update-Help
executa o comando, incluindo o download da Internet, usando 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 NT LAN Manager (NTLM), negociar ou autenticação baseada em Kerberos.
Tipo: | SwitchParameter |
Position: | Named |
Default value: | None |
Necessário: | False |
Aceitar entrada de pipeline: | False |
Aceitar carateres universais: | False |
-WhatIf
Mostra o que aconteceria se o cmdlet fosse executado. O cmdlet não é executado.
Tipo: | SwitchParameter |
Aliases: | wi |
Position: | Named |
Default value: | False |
Necessário: | False |
Aceitar entrada de pipeline: | False |
Aceitar carateres universais: | False |
Entradas
Você pode canalizar um caminho de diretório para Update-Help
.
Você pode canalizar um objeto de módulo do cmdlet Get-Module
para Update-Help
.
Saídas
None
Update-Help
não gera nenhuma saída.
Notas
Para atualizar a ajuda para os módulos Core do PowerShell, que contêm os comandos instalados com o PowerShell ou qualquer módulo no diretório $PSHOME\Modules
, inicie o PowerShell com a opção de Executar como administrador.
Somente os membros do grupo Administradores no computador podem atualizar a ajuda para os módulos principais do PowerShell, os comandos instalados junto com o PowerShell e para os módulos na pasta $PSHOME\Modules
. Se não tiver permissão para atualizar os ficheiros de ajuda, pode ler os ficheiros de ajuda online. Por exemplo, Get-Help Update-Help -Online
.
Os módulos são a menor unidade de ajuda atualizável. Não é possível atualizar a ajuda para um cmdlet específico. Para localizar o módulo que contém um cmdlet específico, use a propriedade ModuleName do cmdlet Get-Command
, por exemplo, (Get-Command Update-Help).ModuleName
.
Como os arquivos de ajuda são instalados no diretório module, o cmdlet Update-Help
pode instalar o arquivo de ajuda atualizado somente para módulos instalados no computador. No entanto, o cmdlet Save-Help
pode salvar a ajuda para módulos que não estão instalados no computador.
Se Update-Help
não conseguir encontrar arquivos de ajuda atualizados para um módulo ou não conseguir encontrar a ajuda atualizada no idioma especificado, ele continuará silenciosamente sem exibir uma mensagem de erro. Para ver os detalhes de status e progresso, use o parâmetro detalhado.
O cmdlet Update-Help
foi introduzido no Windows PowerShell 3.0. Ele não funciona em versões anteriores do Windows PowerShell. Em computadores com o Windows PowerShell 2.0 e o Windows PowerShell 3.0, use o cmdlet Update-Help
em uma sessão do Windows PowerShell 3.0 para baixar e atualizar arquivos de ajuda. Os arquivos de ajuda estão disponíveis para o Windows PowerShell 2.0 e o Windows PowerShell 3.0.
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.
Update-Help
suporta todos os módulos e os snap-ins do PowerShell Core. Não suporta quaisquer outros snap-ins.
Para atualizar a ajuda para um módulo em um local que não está listado na variável de ambiente $env:PSModulePath
, importe o módulo para a sessão atual e execute um comando Update-Help
. Execute Update-Help
sem parâmetros ou use o parâmetro Module para especificar o nome do módulo. O parâmetro Module dos cmdlets Update-Help
e Save-Help
não aceita o caminho completo de um arquivo de módulo ou arquivo de manifesto de módulo.
Qualquer módulo pode suportar a Ajuda Atualizável. Para obter instruções sobre como dar suporte à Ajuda Atualizável nos módulos criados, consulte Supporting Updatable Help.
Os cmdlets Update-Help
e Save-Help
não são suportados no Ambiente de Pré-instalação do Windows (Windows PE).