我想查询 Active Directory 以返回用户登录的天数。目前我可以得到 lastlogon 日期,例如 2/26/2012 9:28:28 AM,但我想知道 lastlogon 和今天之间的天数。
这是我在 stackoverflow 上的另一篇文章中找到的脚本
Search-ADAccount -UsersOnly -SearchBase "OU=users,OU=City,dc=mydomain,DC=local" -AccountDisabled:$false | Get-ADUser -Properties Name, manager, LastLogon | Select Name, manager, @{N='LastLogon'; E={[DateTime]::FromFileTime($_.LastLogon)}} | export-csv u:\Australia.csv -Delimiter ";" -NoTypeInformation
除了返回一个整数告诉我 50 的“lastlogon”之外,我想在我的 CSV 调用“Last Logon Days”中有另一列,这意味着 lastlogon 是 50 天前。
更新:
我根据@Musaab Al-Okaidi 回复使用了这个命令
Search-ADAccount -UsersOnly -AccountDisabled:$false | Get-ADUser -Properties Name, manager, LastLogontimestamp | select Name, @{manager,@{N='LastLogontimestamp'; E={[DateTime]::FromFileTime($_.LastLogontimestamp)}}, @{N='Last Logon Days'; E={$($(Get-Date) - $([DateTime]::FromFileTime($_.LastLogontimestamp))).Days}}