【问题标题】:What date format is this : Mon Oct 18 10:26:10 EDT 2021"这是什么日期格式:Mon Oct 18 10:26:10 EDT 2021"
【发布时间】:2022-01-16 21:07:52
【问题描述】:

下面是什么日期格式以及如何将其转换为在 Powershell 中检查当前日期

Mon Oct 18 10:26:10 EDT 2021

【问题讨论】:

  • 我假设使用 Get-DateGet-TimeZone cmdlet 中的字符串变体。如果你想用 powershell 查看日期。要将字符串转换为日期时间,请查看此处 educba.com/powershell-convert-string-to-date>

标签: powershell powershell-4.0


【解决方案1】:

EDT 表示Eastern Daylight Time (North America),比 UTC 世界时晚 4 小时。

使用它,您可以通过首先添加 4 小时偏移量以获取 UTC 日期,最后使用方法 .ToLocaltime() 将其解析为本地时间。

[datetime]::ParseExact('Mon Oct 18 10:26:10 EDT 2021', 'ddd MMM dd HH:mm:ss \E\D\T yyyy', [cultureinfo]'en-US').AddHours(4).ToLocaltime()

在我的(荷兰语)机器上,这似乎无关紧要,但如果您想绝对确保解析出的日期被视为 UTC(而不是 .Kind设置为“未指定”,使用这个:

[datetime]::SpecifyKind([datetime]::ParseExact('Mon Oct 18 10:26:10 EDT 2021', 'ddd MMM dd HH:mm:ss \E\D\T yyyy', [cultureinfo]'en-US').AddHours(4), 'UTC').ToLocaltime()

【讨论】:

  • 做得很好。请注意,将'AssumeUniversal' 作为第三个参数传递给[datetime]::ParseExact() 更简单,在这种情况下,您将直接获得Local 实例(如果您想要Utc 实例,可以在该实例上调用.ToUniversalTime())。
  • 谢谢 Theo.. 你是明星...非常感谢。
猜你喜欢
  • 1970-01-01
  • 2016-04-29
  • 2015-02-23
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多