我正在尝试使用Active Directory extensionAttributes来跟踪某些日期(例如开始日期,终止日期等),这样我就可以在该日期发生时触发某些操作。
我遇到了可以输入日期的不同变体的问题(M / D / YY,MM / DD / YY,MM / DD / YYYY等)。例如,我可以使用Get-Date
输出格式为M / D / YYYY,但是当有人输入MM / DD / YY时我会遇到问题。
有没有办法使这项工作能够接受其他变化(只要是月/日/年)?
以下是相关脚本中的几行。每天运行一次,并在第二天开始检查新用户。
$StartingOn = (Get-Date).AddDays(1).ToShortDateString()
$NewUserCheck = Get-QADUser -DontUseDefaultIncludedProperties -IncludedProperties extensionAttribute11 | where { $_.extensionAttribute11 -eq $StartingOn }
注意只要日期等于Get-Date
输出,它才会返回。这是我能够让它正常工作的唯一方法。即便如此,如果有人在2015年7月20日输入,输出也不会返回任何内容。
答案 0 :(得分:3)
请勿尝试比较日期字符串。使用不太关心格式化细节的DateTime比较,例如:
$StartingOn = (Get-Date).AddDays(1)
$NewUserCheck = Get-QADUser -DontUseDefaultIncludedProperties -IncludedProperties extensionAttribute11 |
Where { [DateTime]($_.extensionAttribute11) -eq $StartingOn}