Compartilhar via


Update-Help

Baixa e instala os arquivos de ajuda mais recentes em seu computador.

Sintaxe

Update-Help
      [[-Module] <String[]>]
      [-FullyQualifiedModule <ModuleSpecification[]>]
      [[-SourcePath] <String[]>]
      [-Recurse]
      [[-UICulture] <CultureInfo[]>]
      [-Credential <PSCredential>]
      [-UseDefaultCredentials]
      [-Force]
      [-Scope <UpdateHelpScope>]
      [-WhatIf]
      [-Confirm]
      [<CommonParameters>]
Update-Help
      [[-Module] <String[]>]
      [-FullyQualifiedModule <ModuleSpecification[]>]
      [-LiteralPath <String[]>]
      [-Recurse]
      [[-UICulture] <CultureInfo[]>]
      [-Credential <PSCredential>]
      [-UseDefaultCredentials]
      [-Force]
      [-Scope <UpdateHelpScope>]
      [-WhatIf]
      [-Confirm]
      [<CommonParameters>]

Description

O cmdlet Update-Help baixa os arquivos de ajuda mais recentes para módulos do PowerShell e os instala em seu computador. Você não precisa reiniciar o PowerShell para tornar a alteração eficaz. Você pode usar o cmdlet Get-Help para exibir os novos arquivos de ajuda imediatamente.

Update-Help verifica a versão dos arquivos de ajuda em seu 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 arquivos de ajuda podem ser baixados e instalados da Internet ou de um compartilhamento de arquivos.

Sem parâmetros, Update-Help atualiza os arquivos de ajuda para módulos que dão suporte à ajuda atualizável e são carregados na sessão ou instalados em um local incluído no $env:PSModulePath. Para obter mais informações, consulte about_Updatable_Help.

Update-Help verifica a versão da ajuda instalada. Se Update-Help não conseguir encontrar arquivos de ajuda atualizados para um módulo, ele continuará silenciosamente sem exibir uma mensagem de erro. Use o parâmetro Force para ignorar a verificação de versão. Use o parâmetro Verbose para ver os detalhes de status e progresso. Use o parâmetro módulo para atualizar arquivos de ajuda para um módulo específico.

Você também pode usar Update-Help em computadores que não estão conectados à Internet. Primeiro, use o cmdlet Save-Helppara baixar arquivos de ajuda da Internet e salvá-los em uma pasta compartilhada acessível ao sistema não conectado à Internet. Em seguida, use o parâmetro SourcePath de Update-Help para baixar os arquivos de ajuda atualizados do compartilhado e instalá-los no computador.

O cmdlet Update-Help foi introduzido no Windows PowerShell 3.0.

Importante

Update-Help requer privilégios administrativos no PowerShell 6.0 e inferiores. O PowerShell 6.1 e superior definem o de Escopo de padrão como CurrentUser. Antes do PowerShell 6.1, o parâmetro Scope não estava disponível.

Você deve ser membro do grupo Administradores no computador para atualizar os arquivos de ajuda para os principais módulos 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 do PowerShell Core, inicie o PowerShell usando a opção Executar como administrador. Por exemplo: Start-Process pwsh.exe -Verb RunAs.

Exemplos

Exemplo 1: atualizar arquivos de ajuda para todos os módulos

O cmdlet Update-Help atualiza arquivos de ajuda para módulos instalados que dão suporte à Ajuda Atualizável. A linguagem de cultura da interface do usuário (interface do usuário) é 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 apenas para nomes de módulo que começam com microsoft.PowerShell.

Update-Help -Module Microsoft.PowerShell*

Exemplo 3: atualizando a ajuda em um sistema não definido para a localidade en-US

O cmdlet Update-Help foi projetado para baixar a ajuda em vários idiomas. No entanto, quando não há ajuda disponível para o idioma que seu sistema usa, uma mensagem de erro é exibida para o módulo e a cultura da interface do usuário.

Neste exemplo, Update-Help está sendo executado em um sistema definido como a localidade en-GB.

Update-Help Microsoft.PowerShell.Utility -Force

Update-Help: Failed to update Help for the module(s) 'Microsoft.PowerShell.Utility' with
UI culture(s) {en-GB} : The specified culture is not supported: en-GB. Specify a culture
from the following list: {en-US}..
English-US help content is available and can be installed using: Update-Help -UICulture en-US.

Os arquivos de ajuda sempre são publicados para a localidade en-US. Para baixar a ajuda em inglês, execute Update-Help com o parâmetro UICulture e especifique a localidade en-US.

Exemplo 4: atualizar arquivos de ajuda em vários computadores de um compartilhamento de arquivos

Neste exemplo, os arquivos de ajuda atualizados são baixados da Internet e salvos em um compartilhamento de arquivos. Credenciais de usuário são necessárias que tenham permissões para acessar o compartilhamento de arquivos e instalar atualizações. Quando um compartilhamento de arquivos é usado, é possível atualizar computadores que estão por trás de firewalls ou que não estão conectados à Internet.

Save-Help -DestinationPath \\Server01\Share\PSHelp -Credential Domain01\Admin01
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 dão suporte à Ajuda Atualizável. O parâmetro DestinationPath salva os arquivos no compartilhamento de arquivos \\Server01\Share\PSHelp. O parâmetro de Credenciais especifica um usuário que tem permissão para acessar o compartilhamento de arquivos.

O cmdlet Invoke-Command executa comandos de Update-Help remotos 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 de Credenciais especifica um usuário que pode acessar o compartilhamento de arquivos e executar o comando Update-Help remoto.

Exemplo 5: Obter uma lista de arquivos de ajuda atualizados

O cmdlet Update-Help ajuda para um módulo especificado. O cmdlet usa o parâmetro Verbose comum para exibir a lista de arquivos de ajuda que foram atualizados. Você pode usar detalhados para exibir a saída de todos os arquivos de ajuda ou arquivos de ajuda para um módulo específico.

Sem o parâmetro detalhado, Update-Help não exibe os resultados do comando. A saída do parâmetro detalhado é ú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 6: localizar módulos que dão suporte à Ajuda Atualizável

Este exemplo lista os módulos que dão suporte à Ajuda Atualizável. O comando usa a propriedade HelpInfoUri do módulo para identificar módulos que dão suporte à Ajuda Atualizável. A propriedade HelpInfoUri contém uma URL redirecionada quando o cmdlet 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 7: Arquivos de ajuda atualizados de inventário

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 dão suporte à Ajuda Atualizável usando a propriedade HelpInfoUri de módulos. Para módulos que dão suporte à Ajuda Atualizável, o script procura e analisa o arquivo de informações de ajuda (*helpinfo.xml) para localizar o número de 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='http://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 a confirmação antes de executar o cmdlet.

Tipo:SwitchParameter
Aliases:cf
Cargo:Named
Valor padrão:False
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga: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 parâmetro SourcePath ou literalPath é usado no comando.

O parâmetro credencial 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.

Digite um nome de usuário, como user01 ou Domain01\User01, ou insira um objeto PSCredential gerado pelo cmdlet Get-Credential. 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.

Nota

Para obter mais informações sobre proteção de dados SecureString, consulte Quão seguro é SecureString?.

Tipo:PSCredential
Cargo:Named
Valor padrão:Current user
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga: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 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 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:

Update-Help -Module PSScheduledJobs -UICulture en-US, fr-FR, pt-BR

Tipo:SwitchParameter
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-FullyQualifiedModule

O valor pode ser um nome de módulo, uma especificação de módulo completa 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 é um hashtable que tem as seguintes chaves.

  • ModuleName - necessário especifica o nome do módulo.
  • GUID - opcional especifica o GUID do módulo.
  • Também é necessário para 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 do Módulo.

Tipo:ModuleSpecification[]
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:True
Aceitar caracteres curinga:False

-LiteralPath

Especifica a pasta para arquivos de ajuda atualizados em vez de baixá-los da Internet. Use esse parâmetro ou o SourcePath se você tiver usado o cmdlet Save-Help para baixar arquivos de ajuda para um diretório.

Você pode fazer pipeline de 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 caractere curinga. Se o caminho incluir caracteres de escape, coloque-o entre aspas simples. As aspas simples dizem ao PowerShell para não interpretar nenhum caractere como sequências de escape.

Tipo:String[]
Aliases:PSPath, LP
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:True
Aceitar caracteres curinga: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 lista um nome de módulo em cada linha. Caracteres curinga são permitidos. Você pode pipeline módulos do cmdlet Get-Module para o cmdlet Update-Help.

Os módulos especificados devem ser instalados no computador, mas eles 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 * (todos) tenta atualizar a ajuda para todos os módulos instalados no computador. Módulos que não dão suporte à Ajuda Atualizável estão incluídos. Esse valor pode gerar erros quando o comando encontrar módulos que não dão suporte à Ajuda Atualizável. Em vez disso, execute Update-Help sem parâmetros.

O módulo parâmetro do cmdlet Update-Help não aceita o caminho completo de um arquivo de módulo ou arquivo de manifesto do módulo. Para atualizar a ajuda de 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
Cargo:0
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:True
Aceitar caracteres curinga: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
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-Scope

Especifica o escopo do sistema em que a ajuda é atualizada. As atualizações no escopo de Todos os Usuários do exigem privilégios administrativos em sistemas Windows. O parâmetro -Scope foi introduzido no PowerShell Core versão 6.1.

currentUser é o escopo padrão para arquivos de ajuda no PowerShell 6.1 e superior. allUsers podem ser especificados para instalar ou atualizar a ajuda de todos os usuários. Em sistemas Unix, sudo privilégios são necessários para atualizar a ajuda de todos os usuários. Por exemplo: sudo pwsh -c Update-Help

Os valores aceitáveis são:

  • CurrentUser
  • AllUsers
Tipo:UpdateHelpScope
Cargo:Named
Valor padrão:CurrentUser
Obrigatório:False
Aceitar a entrada de pipeline:True
Aceitar caracteres curinga:False

-SourcePath

Especifica uma pasta do sistema de arquivos em que Update-Help obtém 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 uma extensão de nome de arquivo. Você pode fazer o pipeline de 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 você 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 Política de Grupo, de Configuração do Computador e Definir o caminho de origem padrão para ode Atualização-Ajuda. Essa configuração de Política de Grupo impede que os usuários usem Update-Help para baixar arquivos de ajuda da Internet. Para obter mais informações, consulte about_Group_Policy_Settings.

Tipo:String[]
Aliases:Path
Cargo:1
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga: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.

Por padrão, Update-Help obtém arquivos de ajuda na cultura da interface do usuário definida para o sistema operacional ou sua cultura de fallback. Se você especificar o parâmetro UICulture, Update-Help procurará apenas ajuda para o idioma especificado.

A partir do PowerShell 7.4, você pode usar um código de idioma parcial, como en para baixar ajuda em inglês para qualquer região.

Nota

O Ubuntu 18.04 alterou a configuração de localidade padrão para C.UTF.8, que não é uma cultura de interface do usuário reconhecida. Update-Help silenciosamente falha ao baixar a ajuda, a menos que você use esse parâmetro com uma localidade com suporte, como en-US. Isso pode ocorrer em qualquer plataforma que use um valor sem suporte.

Tipo:CultureInfo[]
Cargo:2
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga: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ó é eficaz quando o download da Web usa o NTLM (NT LAN Manager), a negociação ou a autenticação baseada em Kerberos.

Tipo:SwitchParameter
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-WhatIf

Mostra o que aconteceria se o cmdlet fosse executado. O cmdlet não é executado.

Tipo:SwitchParameter
Aliases:wi
Cargo:Named
Valor padrão:False
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

Entradas

DirectoryInfo

Você pode redirecionar um objeto de caminho de diretório para este cmdlet.

PSModuleInfo

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 atualizar a ajuda para os principais módulos 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 principais módulos do PowerShell, os comandos instalados junto com o PowerShell e para módulos na pasta $PSHOME\Modules. Se você não tiver permissão para atualizar arquivos de ajuda, poderá ler os arquivos de ajuda online. Por exemplo, Get-Help Update-Help -Online.

Os módulos são a menor unidade de ajuda atualizável. Você não pode 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 estão instalados no diretório do módulo, o cmdlet Update-Help pode instalar o arquivo de ajuda atualizado apenas para módulos instalados no computador. No entanto, o cmdlet Save-Help pode salvar a ajuda de módulos que não estão instalados no computador.

O cmdlet Update-Help foi introduzido no Windows PowerShell 3.0. Ele não funciona em versões anteriores do PowerShell. Em computadores que têm 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 dá suporte a todos os módulos e aos principais snap-ins do PowerShell. Ele não dá suporte a outros snap-ins.

Para atualizar a ajuda de 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 módulo para especificar o nome do módulo. O módulo parâmetro dos cmdlets Update-Help e Save-Help não aceita o caminho completo de um arquivo de módulo ou arquivo de manifesto do módulo.

Qualquer módulo pode dar suporte à Ajuda Atualizável. Para obter instruções sobre como dar suporte à Ajuda Atualizável nos módulos que você cria, consulte Suporte à ajuda atualizável.

Os cmdlets Update-Help e Save-Help não têm suporte no Windows PE (Ambiente de Pré-Instalação do Windows).