在extensionAttributes和Get-Date中使用日期

时间:2015-07-21 04:20:18

标签: date powershell active-directory quest

我正在尝试使用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日输入,输出也不会返回任何内容。

1 个答案:

答案 0 :(得分:3)

请勿尝试比较日期字符串。使用不太关心格式化细节的DateTime比较,例如:

$StartingOn = (Get-Date).AddDays(1)
$NewUserCheck = Get-QADUser -DontUseDefaultIncludedProperties -IncludedProperties extensionAttribute11 | 
    Where { [DateTime]($_.extensionAttribute11) -eq $StartingOn}