在 PowerShell 中将时间戳转换为日期
要在 PowerShell 中将时间戳转换为日期,请使用 .Net 方法 FromFileTimeToUTC()。该方法以Int64作为输入参数并返回DateTime。
Windows 文件时间或时间戳以刻度和 64 位有符号整数 (int64) 表示。它表示自公元 1601 年 1 月 1 日午夜 12:00 以来经过的 100 纳秒间隔数。
在本文中,我们将讨论如何在 PowerShell 中将时间戳转换为日期时间。
在 PowerShell 中将 Int64 时间戳转换为日期时间
.Net DateTime 库具有 FromFileTimeUTC() 方法,该方法将 int64 的 fileTime 作为输入参数,并返回表示日期和时间的 UTC 时间等效项的 DateTime 对象。
# Timestamp value
$timestamp = "133174935543788321"
# Convert timestamp to datetime
[datetime]::FromFileTimeUtc($timestamp)
在上面的 PowerShell 脚本中,$timestamp 变量存储 int64 位时间戳值。要将时间戳转换为日期时间,它使用 FromFileTimeUtc() 方法并返回指定时间戳的 UTC 时间等效日期和时间。
上述 PowerShell 脚本将指定的 Windows 文件时间戳转换为等效的 UTC 日期时间的输出为:
PS C:\Windows> $timestamp = "133174935543788321"
PS C:\Windows> [datetime]::FromFileTimeUtc($timestamp)
06 January 2023 15:45:54
PS C:\Windows> 结论
希望上面关于如何在PowerShell中将时间戳转换为DateTime的文章对您有所帮助。
您可以在 ShellGeek 主页上找到有关 PowerShell Active Directory 命令和 PowerShell 基础知识的更多主题。
推荐内容
如何在 PowerShell 中将字符串转换为日期时间
PowerShell 新纪元时间和日期时间转换
PowerShell 获取日期减去 1 天
PowerShell 比较文件修改日期
PowerShell 将日期和时间转换为 UTC
