Aqui está uma maneira de filtrar os hotfixes por data usando o VBScript. Você pode facilmente convertê-lo para o PowerShell, se necessário, ou apenas chamar seu código do PowerShell para remover cada hotfix que corresponda ao filtro.
On Error Resume Next
Dim strComputer
Dim objWMIService
Dim propValue
Dim objItem
Dim SWBemlocator
Dim UserName
Dim Password
Dim colItems
Dim dateFilter
dateFilter = CDate("1/9/2013")
strComputer = "."
UserName = ""
Password = ""
Set SWBemlocator = CreateObject("WbemScripting.SWbemLocator")
Set objWMIService = SWBemlocator.ConnectServer(strComputer,"root\CIMV2",UserName,Password)
Set colItems = objWMIService.ExecQuery("Select * from Win32_QuickFixEngineering",,48)
For Each objItem in colItems
hotFixID = objItem.HotFixID
installDate = objItem.InstallDate
If IsNull(installDate) Or Trim(installDate) = "" Then
installDate = objItem.InstalledOn
End If
If IsDate(installDate) Then
If CDate(installDate) > dateFilter Then
WScript.Echo hotFixID & vbTab & installDate
' Call your remove hotfix script or code and pass it the hotFixID and optionally, the machine name
End If
End If
Next