【问题标题】:Pulling multiple bits of information and exporting into a report提取多个信息并导出到报告中
【发布时间】:2019-05-28 11:22:34
【问题描述】:

我正在尝试创建一个报告来查看我系统上当前启用和禁用的所有用户,并显示他们的上次登录时间。

我有两个不同的脚本来完成每项工作,但是,我正在尝试将它们合并到同一个脚本中,这样我就可以同时查看所有这些信息,但会遇到问题。

这是我目前收集信息的尝试:

get-aduser -Filter * -Properties CN,samaccountname,AccountExpirationDate,Enabled,lastLogonTimestamp | Select CN,samaccountname,AccountExpirationDate,Enabled,@{n="lastLogonDate";e={[datetime]::FromFileTime,
($_.lastLogonTimestamp)}} |sort Enabled | export-csv "c:\lemon.csv"

但结果是我最后一次登录显示为static datetime FromFileTime(long fileTime)

提取上次登录日期的最佳方法是什么,可以在一份报告中提取此信息?

【问题讨论】:

  • 代码中有一个逗号:e={[datetime]::FromFileTime,($_.lastLogonTimestamp)}}。删除它,看看它是否有帮助。
  • 我跑了这个,但仍然有同样的问题,lastlogontimestamp 输出奇怪

标签: powershell csv active-directory


【解决方案1】:

我设法将我已经拥有的脚本修改为以下内容:

Import-Module ActiveDirectory

Get-ADUser -Filter * -SearchBase "DC=x,DC=x,DC=x" -ResultPageSize 0 -Property CN,Description, Enabled, LastLogonTimestamp |
    Select-Object -Property CN, Description,Enabled, @{ n = "LastLogonDate"; e = { [datetime]::FromFileTime( $_.lastLogonTimestamp ) } } |
    Sort-Object -Property CN, Description, Enabled, LastLogonDate |
    Export-CSV -NoTypeInformation "C:\Users\x\Desktop\results2.csv"

此代码已解决问题,但仍不确定为什么我的原始代码未正确完成。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-10-19
    • 2015-04-29
    • 1970-01-01
    相关资源
    最近更新 更多