lunedì 1 aprile 2019

PowerShell: Visualizzare gli hotfix installati sul pc locale o su un pc remoto

Con il termine hotfix si intende un singolo pacchetto cumulativo, composto da uno o più file, che include delle informazioni per risolvere un bug o un problema di sicurezza in un determinato prodotto software. Un hotfix, dunque, non è altro che una sorta di aggiornamento rapido rilasciato per rimediare ad un problema software il più velocemente possibile. Per visualizzare gli hotfix installati localmente o su un computer remoto è possibile utilizzare il cmdlet Get-HotFix.

Il cmdlet consente di visualizzare tutti gli hotfix/aggiornamenti installati sul computer locale o su computer remoti tramite Windows Update, Microsoft Update, Windows Server Update Service oppure aggiornamenti installati manualmente dagli utenti.


Sintassi


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




Parametri


-ComputerName
Il parametro consente di indicare un computer remoto. Se il parametro non viene specificato, il cmdlet agisce sul computer locale. Al parametro può essere passato il nome NetBIOS, l'indirizzo IP oppure il FQDN (Fully Qualified Domain Name).

-Credential
Per default il cmdlet viene eseguito con le credenziali dell'account che lancia il comando. Attraverso il parametro -Credential è possibile specificare un'account diverso.

-Description
Consente di ricercare un hotfix in base a una o più parole contenute nella sua descrizione. Sono consentiti caratteri Wildcards. 

-ID
In alternativa al parametro -Description, consente di ricercare un hotfix tramite il proprio ID. Il parametro non consente caratteri Wildcards. Se i parametri -Description e -ID non vengono specificati, la ricerca restituirà tutti gli hotfix.



Esempi


Esempio 1
Get-HotFix
Restituisce tutti gli hotfix/aggiornamenti installati sul computer locale.
PowerShell, Get-HotFix
FIG 1 - PowerShell, Get-HotFix

Esempio 2
Get-HotFix -Description "Security*" -ComputerName "Server01", "Server02"
Visualizza tutti gli hotfix la cui descrizione inizia con la parola Security installati sui server Server01 e Server02.

Esempio 3
Get-Content "ElencoWKS.txt" | ForEach { if (!(Get-HotFix -Id "KB4489899" -ComputerName $_)) { Add-Content $_ -Path "WKS-senza-KB4489899.txt" }}
Per ogni computer elencato all'interno del file ElencoWKS.txt viene verificato se ha installato aggiornamento KB4489899 e, in caso negativo, il nome della postazione viene aggiunto all'elenco contenuto nel file WKS-senza-KB4489899.txt.

Esempio 4
(Get-HotFix | sort installedon)[-1]
Il comando restituisce l'ultimo aggiornamento installato sul computer locale: ordina tutti gli hotfix per data di installazione quindi seleziona dall'array l'ultimo item (l'hotfix più recente).

Esempio 5
Get-Hotfix | Where-Object { $_.HotfixID -like "KB448*" } | Sort-Object InstalledOn
Restituisce tutti gli hotfix che hanno l'ID che inizia per KB448 ordinandoli per data di installazione.
PowerShell, Get-HotFix ricerca di una KB tra gli aggiornamenti installati
FIG 2 - PowerShell, Get-HotFix ricerca di una KB tra gli aggiornamenti installati





Nessun commento:

Posta un commento

I messaggi sono soggetti a moderazione da parte dell'amministratore prima della loro pubblicazione.