none
WMIC查询时字段时间为20190912070426.009348-000如何转化正常时间? RRS feed

  • 问题

  • 尊敬的微软工程师,

    请教一下WMIC命令执行后时间字段20190912070426.009348-000如何转换为正常时间段?

    具体命令如下:

    wmic Path Win32_NTLogEvent Where "Logfile='security' and EventCode='4624'" get TimeGenerated


    谷青松

    2019年9月23日 6:40

答案

  • 你好,

    谢谢你的提问。

    1.powershell脚本:

    [Management.ManagementDateTimeConverter]::ToDateTime('20190924013345.470717-000')

    2. vbs:

    Function FormatFileDate (strDate)
         objSWbemDateTime.Value = strDate
         FormatFileDate = CStr(objSWbemDateTime.GetVarDate(False))
    End Function

    Best regards,

    Lee


    Just do it.

    • 已标记为答案 谷青松 2019年9月25日 1:47
    2019年9月24日 5:43
    版主
  • 你好,

    很抱歉,我对wmic命令并不是很熟悉,请问你是否你愿意尝试使用powershell呢。

    以下 powershell命令和你可以代替你现在使用wmic命令。

    (Get-WmiObject win32_ntlogevent -Filter "logfile='security' and eventcode='4624'").timegenerated

    最好的祝福,

    Lee


    Just do it.

    • 已标记为答案 谷青松 2019年9月26日 1:21
    2019年9月25日 6:20
    版主
  • 你好,

    谢谢你的回复。

    可以的加入的。

    在我的环境中由于很多条4624的日志所以筛选出很多的timegenerated信息。
    (Get-WmiObject win32_ntlogevent -Filter "logfile='security' and eventcode='4624'").timegenerated | %{[Management.ManagementDateTimeConverter]::ToDateTime($_)}

    如果你只是想要获得最新的一条,可以使用以下命令来实现。

    $time=(Get-WmiObject win32_ntlogevent -Filter "logfile='security' and eventcode='4624'"| select -First 1).timegenerated 
    [Management.ManagementDateTimeConverter]::ToDateTime($time)

    最好的祝福,

    Lee


    Just do it.

    • 已标记为答案 谷青松 2019年9月27日 2:59
    2019年9月26日 7:19
    版主

全部回复

  • 你好,

    谢谢你的提问。

    1.powershell脚本:

    [Management.ManagementDateTimeConverter]::ToDateTime('20190924013345.470717-000')

    2. vbs:

    Function FormatFileDate (strDate)
         objSWbemDateTime.Value = strDate
         FormatFileDate = CStr(objSWbemDateTime.GetVarDate(False))
    End Function

    Best regards,

    Lee


    Just do it.

    • 已标记为答案 谷青松 2019年9月25日 1:47
    2019年9月24日 5:43
    版主
  • 谢谢WMIC命令下能直接转吗?

    谷青松

    2019年9月25日 1:48
  • 你好,

    很抱歉,我对wmic命令并不是很熟悉,请问你是否你愿意尝试使用powershell呢。

    以下 powershell命令和你可以代替你现在使用wmic命令。

    (Get-WmiObject win32_ntlogevent -Filter "logfile='security' and eventcode='4624'").timegenerated

    最好的祝福,

    Lee


    Just do it.

    • 已标记为答案 谷青松 2019年9月26日 1:21
    2019年9月25日 6:20
    版主
  • (Get-WmiObject win32_ntlogevent -Filter "logfile='security' and eventcode='4624'").timegenerated

    这条命令脚本能否加入到[Management.ManagementDateTimeConverter]::ToDateTime('20190924013345.470717-000')中TodateTime中?

    最终想看到24 September 2019 09:33:45这样的时间


    谷青松


    • 已编辑 谷青松 2019年9月26日 6:08 补充
    2019年9月26日 6:04
  • 你好,

    谢谢你的回复。

    可以的加入的。

    在我的环境中由于很多条4624的日志所以筛选出很多的timegenerated信息。
    (Get-WmiObject win32_ntlogevent -Filter "logfile='security' and eventcode='4624'").timegenerated | %{[Management.ManagementDateTimeConverter]::ToDateTime($_)}

    如果你只是想要获得最新的一条,可以使用以下命令来实现。

    $time=(Get-WmiObject win32_ntlogevent -Filter "logfile='security' and eventcode='4624'"| select -First 1).timegenerated 
    [Management.ManagementDateTimeConverter]::ToDateTime($time)

    最好的祝福,

    Lee


    Just do it.

    • 已标记为答案 谷青松 2019年9月27日 2:59
    2019年9月26日 7:19
    版主
  • 非常感谢您的技术支持,谢谢!

    谷青松

    2019年9月27日 3:01
  • 不客气,谷先生。

    Just do it.

    2019年9月27日 3:03
    版主