Вы на самом деле не используете диапазон дат, но больше всего, когда вы используете -eq
, вы проверяете, есть ли аккаунты, срок действия которых истекает завтра, ровно в полночь.
Я не знаю Я думаю, что это то, что вы хотите сделать, и вместо этого хотите знать, какие учетные записи должны истекать в или до отчетной даты.
Попробуйте
$refDate = (Get-Date).AddDays(1).Date # tomorrow at midnight
# try to find expired accounts
$users = Get-AdUser -Filter "AccountExpirationDate -lt $refDate" –Properties AccountExpirationDate -ErrorAction SilentlyContinue
if ($users) {
$fileOut = Join-Path -Path 'C:\Temp\Upcoming Retired User' -ChildPath ('Report_{0:yyyyMMdd}.csv' -f (Get-Date))
$users | Select-Object -Property SamAccountName, Name, AccountExpirationDate |
Export-Csv -Path $fileOut -NoTypeInformation
}
else {
Write-Host 'No expired accounts found'
}