views:

46

answers:

0

Can I use a variable in and LdapFilter with Get-QADComputer? i.e.:

$31DaysAgo = (Get-Date).AddDays(-31)

$ft = $31DaysAgo.ToFileTime()

$StComps = Get-QADComputer -SizeLimit 0 -IncludeAllProperties -SearchRoot `
'DC=MY,DC=DOMAIN,DC=LOCAL' -LdapFilter '(&(objectcategory=computer) `
(pwdLastSet<=$ft)(|(operatingsystem=Windows 2000 Professional) `
(operatingSystem=Windows XP*)(operatingSystem=Windows 7*) `
(operatingSystem=Windows Vista*)(operatingsystem=Windows 2000 Server) `
(operatingsystem=Windows Server*)))'

If not, how else can I filter out the pwdLastSet filter? Should I just do it after in a pipe? i.e.:

$StComps = Get-QADComputer -SizeLimit 0 -IncludeAllProperties -SearchRoot `
'DC=MY,DC=DOMAIN,DC=LOCAL' -LdapFilter '(&(objectcategory=computer) `
(|(operatingsystem=Windows2000 Professional)(operatingSystem=Windows XP*) `
(operatingSystem=Windows7*)(operatingSystem=Windows Vista*) `
(operatingsystem=Windows 2000 Server)(operatingsystem=Windows Server*)))' `
| Where {$_.pwdLastSet -gt $ft}

or even

| Where {$_.LastLogonTimeStamp -gt $ft}  

I know this is going to be slower, but if I have to, I'll go this route.

Also, if anyone know's off the top how to time how long a code snippet would take to run, that hint would be greatly appreciated =) ktxbye

Thanks,
-dboftlp