Пожалуйста, мне нужна помощь, у меня есть скрипт, который проверяет папки на серверах, если папки превышают определенное количество файлов, я запускаю функцию, чтобы отправить электронное письмо, чтобы уведомить нас о проблеме. Поскольку скрипт работает постоянно, я попытался установить проверку в функции уведомлений, которая отправляет электронные письма, чтобы проверить, когда было отправлено последнее электронное письмо, если оно меньше 15 минут, оно просто выходит из оператора if, если время после 15 минут он должен отправить еще одно уведомление, обновить последнее отправленное время, и процесс продолжается. Проблема заключается в последнем обновлении, когда функция не видит обновленную переменную. Я попытался установить переменную $ timesent = Get-Date изначально вне функции и внутри, но все еще та же проблема. почти как если бы он увидел другую переменную.
function sendnotification {
$currenttime = Get-Date
$diff = New-Timespan -Start $timesent -End $currenttime
if( $diff.Minutes -ge 15 ) {
send-MailMessage -SmtpServer $smtp -To $to -From $from -Subject $subject -Body $body -BodyAsHtml -Priority high -Credential $cred
$timesent = Get-Date
}
}