Partilhar via


Get-HotFix

Obtém os hotfixes instalados em computadores locais ou remotos.

Sintaxe

Get-HotFix
   [[-Id] <String[]>]
   [-ComputerName <String[]>]
   [-Credential <PSCredential>]
   [<CommonParameters>]
Get-HotFix
   [-Description <String[]>]
   [-ComputerName <String[]>]
   [-Credential <PSCredential>]
   [<CommonParameters>]

Description

Este cmdlet só está disponível na plataforma Windows.

O cmdlet Get-Hotfix usa a classe WMI Win32_QuickFixEngineering para listar hotfixes instalados no computador local ou em computadores remotos especificados.

Exemplos

Exemplo 1: Obter todos os hotfixes no computador local

O cmdlet Get-Hotfix obtém todos os hotfixes instalados no computador local.

Get-HotFix

Source         Description      HotFixID      InstalledBy          InstalledOn
------         -----------      --------      -----------          -----------
Server01       Update           KB4495590     NT AUTHORITY\SYSTEM  5/16/2019 00:00:00
Server01       Security Update  KB4470788     NT AUTHORITY\SYSTEM  1/22/2019 00:00:00
Server01       Update           KB4480056     NT AUTHORITY\SYSTEM  1/24/2019 00:00:00

Exemplo 2: Obter hotfixes de vários computadores filtrados por uma cadeia de caracteres

O comando Get-Hotfix usa parâmetros para obter hotfixes instalados em computadores remotos. Os resultados são filtrados por uma cadeia de caracteres de descrição especificada.

$hotFixParams = @{
    Description = "Security*"
    ComputerName = "Server01, Server02"
    Credential = "Domain01\admin01"
}
Get-HotFix @hotFixParams

Get-Hotfix filtra a saída com o parâmetro Description e a cadeia de caracteres Security que inclui o curinga asterisco (*). O parâmetro ComputerName inclui uma cadeia de caracteres separada por vírgulas de nomes de computadores remotos. O parâmetro Credential especifica uma conta de usuário que tem permissão para acessar os computadores remotos e executar comandos.

Exemplo 3: Verificar se uma atualização está instalada e gravar nomes de computador em um arquivo

Os comandos neste exemplo verificam se uma determinada atualização foi instalada. Se a atualização não estiver instalada, o nome do computador será gravado em um arquivo de texto.

$A = Get-Content -Path ./Servers.txt
$A | ForEach-Object { if (!(Get-HotFix -Id KB957095 -ComputerName $_))
    { Add-Content $_ -Path ./Missing-KB957095.txt }}

A variável $A contém nomes de computador que foram obtidos por Get-Content a partir de um arquivo de texto. Os objetos em $A são enviados pelo pipeline para ForEach-Object. Uma instrução if usa o cmdlet Get-Hotfix com o parâmetro Id e um número de Id específico para cada nome de computador. Se um computador não tiver a ID de hotfix especificada instalada, o cmdlet Add-Content gravará o nome do computador em um arquivo.

Exemplo 4: Obter o hotfix mais recente no computador local

Este exemplo obtém o hotfix mais recente instalado em um computador.

(Get-HotFix | Sort-Object -Property InstalledOn)[-1]

Get-Hotfix envia os objetos pelo pipeline para o cmdlet Sort-Object. Sort-Object classifica objetos por ordem crescente e usa o parâmetro Property para avaliar cada InstalledOn data. O [-1] de notação de matriz seleciona o hotfix instalado mais recente.

Parâmetros

-ComputerName

Especifica um computador remoto. Digite o nome NetBIOS, um endereço IP (Internet Protocol) ou um FQDN (nome de domínio totalmente qualificado) de um computador remoto.

Quando o parâmetro ComputerName não é especificado, Get-Hotfix é executado no computador local.

O parâmetro ComputerName não depende da comunicação remota do Windows PowerShell. Se o computador não estiver configurado para executar comandos remotos, use o parâmetro ComputerName.

Tipo:String[]
Aliases:CN, __Server, IPAddress
Position:Named
Default value:None
Necessário:False
Aceitar entrada de pipeline:True
Aceitar carateres universais:False

-Credential

Especifica uma conta de usuário que tem permissão para acessar o computador e executar comandos. O padrão é o usuário atual

Digite um nome de usuário, como User01 ou Domain01\User01, ou insira um objeto PSCredential gerado pelo cmdlet Get-Credential. Se escrever um nome de utilizador, ser-lhe-á pedido que introduza a palavra-passe.

As credenciais são armazenadas em um objeto de PSCredential e a senha é armazenada como um SecureString.

Observação

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

Tipo:PSCredential
Position:Named
Default value:Current user
Necessário:False
Aceitar entrada de pipeline:False
Aceitar carateres universais:False

-Description

Get-HotFix usa o Description parâmetro para especificar tipos de hotfix. Curingas são permitidos.

Tipo:String[]
Position:Named
Default value:None
Necessário:False
Aceitar entrada de pipeline:False
Aceitar carateres universais:True

-Id

Filtra os resultados do Get-HotFix para IDs de hotfix específicos. Curingas não são aceitos.

Tipo:String[]
Aliases:HFID
Position:0
Default value:None
Necessário:False
Aceitar entrada de pipeline:False
Aceitar carateres universais:False

Entradas

String

Você pode canalizar uma cadeia de caracteres contendo um nome de computador para este cmdlet.

Saídas

ManagementObject

Este cmdlet retorna objetos que representam os hotfixes no computador.

Notas

Este cmdlet só está disponível em plataformas Windows.

O Win32_QuickFixEngineeringclasse WMI representa uma pequena atualização em todo o sistema, comumente referida como uma atualização de engenharia de correção rápida (QFE), aplicada ao sistema operacional atual. Essa classe retorna apenas as atualizações fornecidas pelo Component Based Servicing (CBS). Essas atualizações não estão listadas no registro. As atualizações fornecidas pelo Microsoft Windows Installer (MSI) ou pelo site Windows Update não são retornadas pelo Win32_QuickFixEngineering. Para obter mais informações, consulte Win32_QuickFixEngineering classe.

A saída Get-HotFix pode variar em diferentes sistemas operacionais.