【发布时间】:2020-01-06 13:56:21
【问题描述】:
一个简单的问题,显然今天(2020 年 1 月 6 日)周数应该是 2,因为 2020 年有 53 周。
但是,以下 PowerShell sn-p 返回 1:
(Get-Date -UFormat %V)
正确获取周数的好方法是什么?
【问题讨论】:
-
PowerShell 为此遵从 .NET,而 .NET 并没有完全实现 ISO 周数,根据 this question。修复此问题的代码 sn-ps 可以使用
Add-Type直接导入 PowerShell,否则代码很容易直接转换为 PowerShell。 -
顺便说一下,一年中的总周数无关紧要。 (ISO) 周数是 2 的原因是因为前一周是 1,而该周是 1 的原因是因为它是包含第一个星期四的周。今年有 53 个 ISO 周,因为从星期三开始是闰年,但这不是同等属性。
标签: powershell week-number getdate