Als je Windows PC of server al een tijdje draait, dan moet je soms opzoeken of een patch – Windows update – geïnstalleerd is, of niet. Net als het installeren van Windows Updates kan dit snel en eenvoudig met PowerShell. Hiervoor gebruik je de Get-HotFix opdracht.
Om PowerShell te laten weergeven welke updates geïnstalleerd zijn in Windows, moet je een PowerShell-venster als beheerder starten. Dit gaat net als het starten van cmd.exe als beheerder, wat ik in het artikel 7-Zip installeren uitlegde:
- Druk op de Windows toets of Start
- Begin met powershell te typen en Windows PowerShell zal gauw als optie tevoorschijn komen.
De PowerShell cmdlet die je gebruikt voor het opvragen van geïnstalleerde updates en hot-fixes is, Get-HotFix:
The
https://docs.microsoft.com/en-us/powershell/module/Microsoft.PowerShell.Management/Get-HotFixGet-Hotfix
cmdlet gets hotfixes, or updates, that are installed on the local computer or specified remote computers. The updates can be installed by Windows Update, Microsoft Update, Windows Server Update Services, or manually installed.
PS C:\WINDOWS\system32> Get-HotFix
Source Description HotFixID InstalledBy InstalledOn
------ ----------- -------- ----------- -----------
DESKTOP-JS… Update KB4586876 NT AUTHORITY\SYSTEM 12/1/2020 12:00:00 AM
DESKTOP-JS… Update KB4534170 NT AUTHORITY\SYSTEM 3/23/2020 12:00:00 AM
DESKTOP-JS… Security Update KB4537759 NT AUTHORITY\SYSTEM 3/23/2020 12:00:00 AM
DESKTOP-JS… Security Update KB4545706 NT AUTHORITY\SYSTEM 3/23/2020 12:00:00 AM
DESKTOP-JS… Security Update KB4557968 NT AUTHORITY\SYSTEM 5/13/2020 12:00:00 AM
DESKTOP-JS… Security Update KB4560366 NT AUTHORITY\SYSTEM 6/10/2020 12:00:00 AM
DESKTOP-JS… Security Update KB4561600 NT AUTHORITY\SYSTEM 6/10/2020 12:00:00 AM
DESKTOP-JS… Update KB4562830 NT AUTHORITY\SYSTEM 12/8/2020 12:00:00 AM
DESKTOP-JS… Security Update KB4566785 NT AUTHORITY\SYSTEM 7/14/2020 12:00:00 AM
DESKTOP-JS… Security Update KB4570334 NT AUTHORITY\SYSTEM 8/12/2020 12:00:00 AM
DESKTOP-JS… Security Update KB4577266 NT AUTHORITY\SYSTEM 9/9/2020 12:00:00 AM
DESKTOP-JS… Security Update KB4580325 NT AUTHORITY\SYSTEM 10/14/2020 12:00:00 AM
DESKTOP-JS… Security Update KB4586864 NT AUTHORITY\SYSTEM 11/10/2020 12:00:00 AM
DESKTOP-JS… Security Update KB4593175 NT AUTHORITY\SYSTEM 12/8/2020 12:00:00 AM
DESKTOP-JS… Security Update KB4592438 NT AUTHORITY\SYSTEM 12/8/2020 12:00:00 AM
DESKTOP-JS… Update KB4592784 NT AUTHORITY\SYSTEM 12/1/2020 12:00:00 AM
Helaas rapporteert Get-HotFix een foutief tijdstip van installeren.
Je kunt ook een specifieke HotFixID opvragen:
PS C:\Users\administrator> Get-HotFix -Id KB4586876
Source Description HotFixID InstalledBy InstalledOn
------ ----------- -------- ----------- -----------
DESKTOP-JS… Update KB4586876 NT AUTHORITY\SYSTEM 12/1/2020 12:00:00 AM
Of welke security updates geïnstalleerd zijn:
PS C:\Users\administrator> Get-HotFix -Description Security*
Source Description HotFixID InstalledBy InstalledOn
------ ----------- -------- ----------- -----------
DESKTOP-JS… Security Update KB4537759 NT AUTHORITY\SYSTEM 3/23/2020 12:00:00 AM
DESKTOP-JS… Security Update KB4545706 NT AUTHORITY\SYSTEM 3/23/2020 12:00:00 AM
DESKTOP-JS… Security Update KB4557968 NT AUTHORITY\SYSTEM 5/13/2020 12:00:00 AM
DESKTOP-JS… Security Update KB4560366 NT AUTHORITY\SYSTEM 6/10/2020 12:00:00 AM
DESKTOP-JS… Security Update KB4561600 NT AUTHORITY\SYSTEM 6/10/2020 12:00:00 AM
DESKTOP-JS… Security Update KB4566785 NT AUTHORITY\SYSTEM 7/14/2020 12:00:00 AM
DESKTOP-JS… Security Update KB4570334 NT AUTHORITY\SYSTEM 8/12/2020 12:00:00 AM
DESKTOP-JS… Security Update KB4577266 NT AUTHORITY\SYSTEM 9/9/2020 12:00:00 AM
DESKTOP-JS… Security Update KB4580325 NT AUTHORITY\SYSTEM 10/14/2020 12:00:00 AM
DESKTOP-JS… Security Update KB4586864 NT AUTHORITY\SYSTEM 11/10/2020 12:00:00 AM
DESKTOP-JS… Security Update KB4593175 NT AUTHORITY\SYSTEM 12/8/2020 12:00:00 AM
DESKTOP-JS… Security Update KB4592438 NT AUTHORITY\SYSTEM 12/8/2020 12:00:00 AM
Als je gedetailleerd wilt weergeven welke updates vandaag zijn geïnstalleerd, dan moet je zoeken tussen gisteren en morgen:
$Yesterday = (Get-Date).AddDays(-1).ToString('MM-dd-yyyy')
$Tomorrow = (Get-Date).AddDays(+1).ToString('MM-dd-yyyy')
Get-HotFix | ?{ $_.InstalledOn -gt "${Yesterday}" -AND $_.InstalledOn -lt "${Tomorrow}" }
Gebruik dit bijvoorbeeld om te controleren of alle updates geïnstalleerd zijn, nadat je Windows updates installeert met PowerShell of belangrijk Windows-onderhoud uitvoert.
Wil jij meer leren over (het gebruik van) PowerShell?
Learn PowerShell in a Month of Lunches is een taakgerichte handleiding voor het beheren van Windows, Linux en macOS systemen met Microsoft PowerShell.
Powershell For Sysadmins: Workflow Automation Made Easy – met PowerShell kun je taken automatiseren met scripts zonder dat je de ingewikkelde ins- en outs van programmeren hoeft te leren