Posted On February 9, 2022

PowerShell: Check Windows Computers for Specific KB’s

kimconnect 0 comments
blog.KimConnect.com >> Codes , Windows >> PowerShell: Check Windows Computers for Specific KB’s
# Check for specific KBs
$kbs='KB5010790','KB5010419'
$computernames=@('WINDOWS001','WINDOWS002')
$regexIP = [regex] "\b(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\b"
$names=foreach($computername in $computernames){
    if($computername -match $regexIp){[System.Net.Dns]::GetHostByAddress($computername).hostname}else{$computername}
}
invoke-command -scriptblock {
    param($kbs)
    $result=get-hotfix|?{$_.HotFixID -in $kbs}
    if($result){
        [hashtable]@{$env:computername="Passed: $($result.HotFixID -join ',')"}
    }else{
        [hashtable]@{$env:computername='Failed'}
    }
} -Args @(,$kbs) -computername $names 

Leave a Reply

Your email address will not be published. Required fields are marked *

Related Post

PowerShell: Get Hyper-V Host Name from Inside Guest VM

$guestVMName="SOMENAME"function getHyperVHostname{ param([string]$guestVMName=$env:computername) $hive = [Microsoft.Win32.RegistryHive]::LocalMachine; $keyPath = 'SOFTWARE\Microsoft\Virtual Machine\Guest\Parameters'; $value = 'HostName'; $reg =…

Quick Script to Mount Remote UNC Paths as Local Drive Letters

Simple Mount: # Mapping a drive $username='domain\testAdmin' $password='PASSWORD' $remotePath='\\UNCSERVER\SHAREPATH\Backup' $unavailableDriveLetters=(Get-Volume).DriveLetter|sort $availableDriveLetters=.{(65..90|%{[char]$_})|?{$_ -notin $unavailableDriveLetters}} [char]$firstAvailableDriveLetter=$availableDriveLetters[0] $command="net…

PowerShell: Check IP Conflicts of Computers in Active Directory

We have ran into issues where a group of virtual machines living on a DHCP…