【问题标题】:Convert unix time to GMT +1将 unix 时间转换为 GMT +1
【发布时间】:2018-07-12 08:55:09
【问题描述】:

我正在尝试提取有关上次创建的 Windows 还原点的信息。

到目前为止,我已经做了这个

$rpDate = Get-ComputerRestorePoint | Select-Object -Property CreationTime
$rpDesc = Get-ComputerRestorePoint | Select-Object -Property Description

$rpDate[-1]
$rpDesc[-1]

结果是“20180711124151.733659-000”,这是日期和时间,我认为是 unix 时间。通常,在 PHP 中我会创建一个函数($rpDate),但由于这是 powershell,我有点迷茫。

如何将 unix 时间转换为实际日期 + 时间戳?

【问题讨论】:

    标签: function powershell date unix


    【解决方案1】:

    您可以按照Get-ComputerRestorePoint 的原始说明,在原始调用中像这样格式化日期:

    Get-ComputerRestorePoint | Format-Table @{Label="Date" ; Expression={$_.ConvertToDateTime($_.CreationTime)}}
    

    输出应如下所示:

    Date
    ----
    05.07.2018 08:09:18
    05.07.2018 08:11:59
    11.07.2018 07:57:54
    

    如果您想获取某些元素(例如最后一个条目),您可以使用Select-Object 代替(谢谢@Jacob),如果您还希望描述这样做:

    Get-ComputerRestorePoint | Select @{Label="Date" ; Expression={$_.ConvertToDateTime($_.CreationTime)}}, Description -last 1
    

    您可以通过(<command>).Date 或在管道中使用Select-Object -ExpandProperty Date 来选择描述或日期。

    如果你想直接转换时间,你必须在.处拆分输出,并按照Convert Unix Time with Powershell这里的说明进行操作

    【讨论】:

    • 谢谢。是的,这行得通。但我无法选择数组中的最后一个日期,我希望它也能接受描述。我的目标是得到一个弹出框,它写最后一个还原点。如果最后一个还原点超过 7 天,它应该警告用户。
    • 尝试使用选择而不是格式表:Get-ComputerRestorePoint | Select @{Label="Date" ; Expression=$_.ConvertToDateTime($_.CreationTime)}} -last 1
    • @SneakyFrog 我编辑了答案以满足您的需求。感谢 Jacob 的补充。
    猜你喜欢
    • 2013-06-01
    • 1970-01-01
    • 2019-01-27
    • 2016-04-07
    • 2016-09-03
    • 2020-04-15
    • 2018-06-28
    • 2017-08-26
    • 2012-12-25
    相关资源
    最近更新 更多