我的目标是从我的域中获取用户列表,其中包含以下信息:
- 显示名称-Country -Manager名称 - 最后登录日期
我正在运行以下脚本,除了LastLogon之外,一切看起来都很好 . 它将时间输入一堆随机数,如“129948127853609000” . 如何将其转换为DateTime格式?
Search-ADAccount -UsersOnly -SearchBase "OU=International,DC=mycompany,DC=com" -AccountDisabled:$false | Get-ADUser -Properties Name, manager, LastLogon | Select Name, manager, LastLogon | export-csv C:\Australia.csv -NoTypeInformation
4 回答
DateTime.FromFileTime
应该做的诀窍:然后,根据您希望如何格式化它,查看standard和custom datetime格式字符串 .
如果要将其集成到单行中,请将
select
语句更改为:LastLogon是用户最后一次登录到您运行GET-ADUser cmdlet和 is not replicated across the domain 时恰好已经负载 balancer 的域控制器 . 如果您希望最后一个用户登录到域中的任何域控制器,您真的应该使用LastLogonTimestamp .
使用 LastLogonDate 属性,您不必转换日期/时间 . 转换时 lastLogonTimestamp 应等于 LastLogonDate . 这样,您将获得跨域的最后登录日期和时间,而无需转换结果 .