Powershell获取修补程序信息

时间:2013-10-29 15:29:26

标签: powershell windows-server-2003 hotfix

我希望从2003服务器获取Windows Hotfix信息。为此,使用以下PowerShell脚本作为Get-Hotfix不会返回所有已安装的日期。我想要做的是在特定日期之后仅应用更新。怎么可以这样做?

    $computername = "Compter01"
    $HotFix = Get-WmiObject win32_ntlogevent -filter "(logfile='system') AND (sourcename='ntservicepack')" -cn $computername |
    select @{name="ServerName"; e={$_.__Server}},Message,@{label="Date Installed"; expression={$_.ConverttoDateTime($_.TimeWritten)}}

1 个答案:

答案 0 :(得分:2)

试试这个:

$date = [datetime]'1/1/2013'
$computername = "Compter01"
$HotFix = Get-WmiObject win32_ntlogevent -filter "(logfile='system') AND (sourcename='ntservicepack')" -cn $computername | 
    Where {$_.ConvertToDateTime($_.TimeWritten) -gt $date} | 
    Select @{name="ServerName"; e={$_.__Server}},Message,@{label="Date Installed"; expression={$_.ConverttoDateTime($_.TimeWritten)}}

可能有办法使用WMI过滤器查询过滤日期,但这不是我的专业领域。