我試過PowerShell的Get-Hotfix
,不喜歡結果。我不需要安裝任何新的更新。我想以CSV格式獲得結果,因爲我有大約30臺服務器要列出。使用Powershell已安裝的MSKB補丁更新清單
這是我到目前爲止有:
$servern = 'ABC'
$Session = [activator]::CreateInstance([type]::GetTypeFromProgID("Microsoft.Update.Session",$servern))
$Searcher = $Session.CreateUpdateSearcher()
$HistoryCount = $Searcher.GetTotalHistoryCount()
$Searcher.QueryHistory(1, $historyCount) | Select-Object Date,$servern,
$temp = "" | Select Computer, operation, resultcode,resultcode
$temp.Computer = $servern,
$temp.operation = expression={switch($_.operation){
1 {"Installation"}; 2 {"Uninstallation"}; 3 {"Other"}}},
$temp.resultcode = expression={switch($_.resultcode){
1 {"In Progress"}; 2 {"Succeeded"}; 3 {"Succeeded With Errors"};
4 {"Failed"}; 5 {"Aborted"}
}}
$temp.Title
# What we would like to see is:
# SERVER, DATE, TITLE, OPERATION, RESULTCODE
# ABC,5/5/2011 3:29:52 PM,Update for Windows Server 2003 (KB927891),Installation,Succeeded
# ABC,5/5/2011 3:30:01 PM,Cumulative Security Update for Outlook Express for Windows Server 2003 (KB929123),Installation,Succeeded
# etc..
並將這些信息導致CSV。
謝謝!
這不是你一個答案,但您使用WSUS?如果是這樣,您可以使用WSUS 4/PowerShell 3中提供的WSUS cmdlet嗎?通過這種方式,WSUS將爲您保留所有這些信息,並且您可以在中心位置進行查詢。 – briantist 2014-10-31 16:36:49
我不知道它是WSUS還是Shavlik?我們的服務器更新由與我們不同的團隊管理。我們正在獨立地嘗試捕獲安裝的服務器/補丁的日誌或列表,然後與補丁團隊聯繫。 – Leptonator 2014-10-31 16:43:54