powershell - Powershell 日期范围
问题描述
我想创建一个变量,其中包含yyyy_MM_dd
格式中的日期列表,距给定日期一周。
我当前的代码有效,但效率不高或非常干净。理想情况下,最早的日期(以下示例中的 -6 天)将是一个单独的变量,$lastDate = '-6'
以便我可以快速进行调整,同时仍然让脚本从$lastDate
.
我计划使用这个变量来查找包含特定格式的日期的路径,所以如果输出是字符串而不是真正的“日期”就可以了。我不想使用日期过滤器,Get-ChildItem
因为文件路径的实际日期与路径名不准确。
当前脚本:
$range = (Get-Date).AddDays(-6).ToString('yyyy_MM_dd'), (Get-Date).AddDays(-5).ToString('yyyy_MM_dd'), (Get-Date).AddDays(-4).ToString('yyyy_MM_dd'), (Get-Date).AddDays(-3).ToString('yyyy_MM_dd'), (Get-Date).AddDays(-2).ToString('yyyy_MM_dd'), (Get-Date).AddDays(-1).ToString('yyyy_MM_dd'), (Get-Date).ToString('yyyy_MM_dd')
这将返回所需的结果:
2019_11_28
2019_11_29
2019_11_30
2019_12_01
2019_12_02
2019_12_03
2019_12_04
谁能建议一种更清洁或更有效的方法来做到这一点?
解决方案
也许像下面这样?
$range = -6..0 |
ForEach-Object { (Get-Date).AddDays($_).ToString('yyyy_MM_dd') }
$range
2019_11_28 2019_11_29 2019_11_30 2019_12_01 2019_12_02 2019_12_03 2019_12_04
推荐阅读
- c# - 使用构造函数参数设置字段的冗余/清洁方式更少?
- visual-studio-code - 如何将日语文本输入到 Visual Studio Code?
- printing - 如何使用 Stimulsoft.Report.Web 打印 asp.net MVC
- python - Python AutoPep8 格式不适用于最大行长参数
- python-3.x - 任何人都可以指出这句话有什么问题吗?
- java - 优化 Java 中的 If- else if- else 语句
- ruby - 在类顶部调用的 Ruby 方法
- reactjs - 在同一个远程托管面板上从反应前端与 ASP.NET Core Web API 进行通信
- python - Python 中的矩阵使用 Numpy Python 给出错误的结果
- python - 循环读取 XML 文件最终会导致内存错误