Condividi tramite


Get-HotFix

Ottiene gli hotfix installati nei computer locali o remoti.

Sintassi

Default (impostazione predefinita).

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

DESCRIPTION

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

Descrizione

Questo cmdlet è disponibile solo nella piattaforma Windows.

Il cmdlet Get-HotFix usa la classe WMI Win32_QuickFixEngineering per elencare gli hotfix installati nel computer locale o nei computer remoti specificati.

Esempio

Esempio 1: Ottenere tutti gli hotfix nel computer locale

Il cmdlet Get-HotFix ottiene tutti gli hotfix installati nel computer locale.

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

Esempio 2: Ottenere gli hotfix da più computer filtrati in base a una stringa

Il comando Get-HotFix usa i parametri per ottenere gli hotfix installati nei computer remoti. I risultati vengono filtrati in base a una stringa di descrizione specificata.

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

Get-HotFix filtra l'output con il parametro Description e la stringa Security che include l'asterisco (*) carattere jolly. Il parametro ComputerName include una stringa delimitata da virgole di nomi di computer remoti. Il parametro Credential specifica un account utente autorizzato ad accedere ai computer remoti ed eseguire i comandi.

Esempio 3: Verificare se un aggiornamento è installato e scrivere nomi di computer in un file

I comandi in questo esempio verificano se è installato un particolare aggiornamento. Se l'aggiornamento non è installato, il nome del computer viene scritto in un file di testo.

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

La variabile $A contiene nomi di computer ottenuti da Get-Content da un file di testo. Gli oggetti in $A vengono inviati nella pipeline a ForEach-Object. Un'istruzione if usa il cmdlet Get-HotFix con il parametro id e un numero ID specifico per ogni nome computer. Se non è installato l'ID hotfix specificato, il cmdlet Add-Content scrive il nome del computer in un file.

Esempio 4: Ottenere l'hotfix più recente nel computer locale

Questo esempio ottiene l'hotfix più recente installato in un computer.

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

Get-HotFix invia gli oggetti nella pipeline al cmdlet Sort-Object. Sort-Object ordina gli oggetti in base all'ordine crescente e usa il parametro property per valutare ogni data InstalledOn. La notazione della matrice [-1] seleziona l'hotfix installato più recente.

Parametri

-ComputerName

Specifica un computer remoto. Digitare il nome NetBIOS, un indirizzo IP (Internet Protocol) o un nome di dominio completo (FQDN) di un computer remoto.

Quando il parametro computerName non viene specificato, Get-HotFix viene eseguito nel computer locale.

Il parametro ComputerName non si basa sulla comunicazione remota di Windows PowerShell. Se il computer non è configurato per eseguire comandi remoti, usare il parametro ComputerName.

Proprietà dei parametri

Tipo:

String[]

Valore predefinito:None
Supporta i caratteri jolly:False
DontShow:False
Alias:Cina, __Server, Indirizzo IP

Set di parametri

(All)
Posizione:Named
Obbligatorio:False
Valore dalla pipeline:False
Valore dalla pipeline in base al nome della proprietà:True
Valore dagli argomenti rimanenti:False

-Credential

Specifica un account utente che dispone dell'autorizzazione per accedere al computer ed eseguire i comandi. Il valore predefinito è l'utente corrente

Digitare un nome utente, ad esempio User01 o Domain01\User01oppure immettere un oggetto PSCredential generato dal cmdlet Get-Credential. Se si digita un nome utente, viene richiesto di immettere la password.

Le credenziali vengono archiviate in un oggetto PSCredential e la password viene archiviata come SecureString.

Annotazioni

Per ulteriori informazioni sulla protezione dei dati di SecureString, vedere Quanto è sicuro SecureString?.

Proprietà dei parametri

Tipo:PSCredential
Valore predefinito:Current user
Supporta i caratteri jolly:False
DontShow:False

Set di parametri

(All)
Posizione:Named
Obbligatorio:False
Valore dalla pipeline:False
Valore dalla pipeline in base al nome della proprietà:False
Valore dagli argomenti rimanenti:False

-Description

Get-HotFix usa il parametro description per specificare i tipi di hotfix. Sono consentiti i metacaratteri.

Proprietà dei parametri

Tipo:

String[]

Valore predefinito:None
Supporta i caratteri jolly:True
DontShow:False

Set di parametri

Description
Posizione:Named
Obbligatorio:False
Valore dalla pipeline:False
Valore dalla pipeline in base al nome della proprietà:False
Valore dagli argomenti rimanenti:False

-Id

Filtra i risultati Get-HotFix per id hotfix specifici. I caratteri jolly non vengono accettati.

Proprietà dei parametri

Tipo:

String[]

Valore predefinito:None
Supporta i caratteri jolly:False
DontShow:False
Alias:HFID

Set di parametri

Default
Posizione:0
Obbligatorio:False
Valore dalla pipeline:False
Valore dalla pipeline in base al nome della proprietà:False
Valore dagli argomenti rimanenti:False

CommonParameters

Questo cmdlet supporta i parametri comuni: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction e -WarningVariable. Per altre informazioni, vedi about_CommonParameters.

Input

String

È possibile inviare tramite pipe una stringa contenente un nome computer a questo cmdlet.

Output

ManagementObject

Questo cmdlet restituisce oggetti che rappresentano gli hotfix nel computer.

Note

Questo cmdlet è disponibile solo nelle piattaforme Windows.

La classe WMI Win32_QuickFixEngineering rappresenta un piccolo aggiornamento a livello di sistema, comunemente definito aggiornamento QFE (Quick Fix Engineering), applicato al sistema operativo corrente. Questa classe restituisce solo gli aggiornamenti forniti da CBS (Component Based Servicing). Questi aggiornamenti non sono elencati nel Registro di sistema. Gli aggiornamenti forniti da Microsoft Windows Installer (MSI) o dal sito windows Update non vengono restituiti da Win32_QuickFixEngineering. Per altre informazioni, vedere Win32_QuickFixEngineering classe.

L'output Get-HotFix può variare in diversi sistemi operativi.