Powershell 密码过期日期过滤

Powershell password expiration date filtering

我目前正在尝试提取一个 CSV,其中 returns 用户的 AD 密码将在一个日期范围内过期。我目前有下面的代码,它提取所有用户和到期日期和电子邮件。想知道如何按日期过滤此声明,以便我可以了解到期后 5 天的所有用户?

get-aduser -filter * -properties "DisplayName", "msDS-UserPasswordExpiryTimeComputed" , EmailAddress, DisplayName | Select-Object -Property "Displayname", EmailAddress,@{Name="Expiration Date";Expression={[datetime]::FromFileTime($_."msDS-UserPasswordExpiryTimeComputed")}} | Export-Csv -Path c:\support\PasswordExpiration.csv -Encoding ascii -NoTypeInformation

Export-Csv前加一个Where-Object。这将 return 所有到期日期在未来少于 5 天的用户

Get-ADUser -Filter * -Properties "DisplayName", "msDS-UserPasswordExpiryTimeComputed" , EmailAddress, DisplayName | 
    Select-Object -Property "Displayname", EmailAddress,@{Name="Expiration Date";Expression={[datetime]::FromFileTime($_."msDS-UserPasswordExpiryTimeComputed")}} | 
    Where-Object { $_.'Expiration Date' -lt (Get-Date).AddDays(5) } |
    Export-Csv -Path c:\support\PasswordExpiration.csv -Encoding ascii -NoTypeInformation