Birden çok bilgisayarda bekleyen Windows güncellemelerini tanımlayın

Womanne

Member
Özellikle Windows sunucu sistemleri, yöneticiler sunucuların yeni özellikleri yüklediğinde denetimi elinde tutmak istedikleri için genellikle otomatik güncellemelerle yapılandırılmaz. Ancak bazı bilgisayarlar uzun süredir güncellenmemiş olabilir mi?


Aşağıdaki PowerShell betiği bu soruyu yanıtlar. İlk satırda belirtilen bilgisayarlara (istemci veya sunucu olup olmadığına bakılmaksızın) kaç tane Windows güncellemesinin henüz yüklenmediğini sorar. Komut dosyası bunun için yöntemi kullanır Araştırma() COM sınıfı Microsoft.Update.Searcher. Betik için ön koşul, hedef sistemlerde PowerShell 2.0 veya sonraki bir sürümün yüklü olması, PowerShell Remoting’in açık olması ve yürüten kullanıcının hedef sistemler üzerinde yönetici haklarına sahip olmasıdır. Sonuç, her bilgisayar adı için bekleyen güncellemelerin sayısını veren bir listedir. Elbette komut dosyasını, örneğin Active Directory’den bilgisayarların listesini okuyarak genişletebilirsiniz.

$Computerliste = "Server123","Server456","Server789","Client01","Client02"
# Schleife über o.g. Computerliste
foreach($computer in $Computerliste)
{
# PowerShell-Remoting-Aufruf zu dem Rechner
Invoke-Command -Computer $computer -ArgumentList $computer ↲
-ScriptBlock {
$computer = $args[0]
# Abfrage mit COM-Objekt
$Searcher = New-Object -ComObject Microsoft.Update.Searcher
$Criteria = "IsInstalled=0 and Type='Software'"
$SearchResult = $Searcher.Search($Criteria).Updates
"Computer " + $computer + ": " + $SearchResult.Count + " anstehende ↲
Updates"
}
}


()






Haberin Sonu
 
Üst