Я пытаюсь создать скрипт, который будет проверять, когда было выполнено самое последнее обновление на Windows машине. Затем, если самое последнее обновление было старше 90 дней, отправьте уведомление по электронной почте на адрес itadmin и запустите обновление (у меня пока не добавлена часть электронной почты, но это всего лишь копия пасты). Проблема, с которой я столкнулся, заключается в том, что я хочу показать только три самых последних обновления в get-WUHistory, и время их обновления должно быть изменено. Есть идеи, как это сделать? Заранее благодарен за любую помощь.
Также я должен добавить, что у меня очень мало опыта работы с Powershell, я начал с него всего около двух недель go, так что это может быть глупый вопрос.
Install-PackageProvider -Name NuGet -MinimumVersion 2.8.5.201 -Force
Install-Module PSWindowsUpdate -Force
Import-Module PSWindowsUpdate -Force
$Version = (Get-Item "HKLM:SOFTWARE\Microsoft\Windows NT\CurrentVersion").GetValue('ReleaseID')
$Date = (Get-Date).AddDays(-90)
$UpdateTime = Get-WUHistory | Format-List -Property Date
Write-Output $Version
If($UpdateTime -lt $Date){
########################
}
If($version -lt 1909){
Write-Host("This computer is not up to date") -ForegroundColor Red
Get-WindowsUpdate -MicrosoftUpdate -Download
}
else {
Write-Host("This computer is up to date" ) -foregroundcolor green
Write-Host("Checking for patches") -ForegroundColor Green
Get-WindowsUpdate -MicrosoftUpdate -category "Security Updates" -Severity Critical,Important,Moderate
}
#Restart-Computer -force