Як можна порівняти встановлені виправлення між двома серверами Windows за допомогою PowerShell?


9

Мені потрібно порівняти встановлені патчі між розробником та виробничим середовищем за допомогою PowerShell. Як я можу це зробити?

Відповіді:


11

Нещодавно я вела блог про цю проблему і придумала цей сценарій. Ви можете або запустити його як користувача, який є адміністратором на обох машинах, або використовувати -Credentialпараметр у get-hotfixкомандах.

$server1 = Read-Host "Server 1"
$server2 = Read-Host "Server 2"

$server1Patches = get-hotfix -computer $server1 | Where-Object {$_.HotFixID -ne "File 1"}

$server2Patches = get-hotfix -computer $server2 | Where-Object {$_.HotFixID -ne "File 1"}

Compare-Object ($server1Patches) ($server2Patches) -Property HotFixID

1
Ніколи не знав про виправлення. Чудовий саморіз інформації там.
Майк

Будьте обережні, використовуючи Get-Hotfix, він повідомляє лише про підмножину патчів. Дивіться цю статтю Хей-сценарій Хлопець для отримання додаткової інформації. @Mike
Ешлі

0
clear-host
$machine1=Read-Host "Enter Machine Name 1:-"
$machine2=Read-Host "Enter Machine Name 2:-"
$machinesone=@(Get-wmiobject -computername  $machine1 -Credential Domain\Adminaccount -query 'select hotfixid from Win32_quickfixengineering')
$machinestwo=@(Get-WmiObject -computername $machine2  -Credential Domain\Adminaccount -query 'select hotfixid from Win32_quickfixengineering')
Compare-Object -RefernceObject $machinesone -DiffernceObject $machinestwo -Property hotfixid

1
Чи можете ви пояснити, як запит на WMI може бути кращим, ніж запуск нашої власної оболонки проти кожного хоста?
поспіх
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.