我正在使用PowerShell的-match
运算符和正则表达式\b(Thu|Fri|Sat|Sun).([012]?[0-9][:]\d{2})
来获取重启应该发生的日期和时间。在24小时内添加前导零的格式字符串
的样本数据:
Patching - Prod - Fri 2:00
Patching - Prod - Fri 22:00
Patching - Prod - Thu 22:00
Patching - Prod - Fri 22:00
Patching - Prod - Sat 18:00
Patching - Prod - Sun 2:00
Patching - Prod - Sun 00:00
Patching - Prod - Sat 2:00
$Rebootinfo = "Patching - Prod - Sat 2:00"
"$Rebootinfo" -match "\b(Thu|Fri|Sat|Sun).([012]?[0-9][:]\d{2})" | Out-Null
这个伟大的工程,但我发现时,时间是2:00 AM
我得到2:00
和我期待垫与02:00
前导零还,如果时间是导致午夜,结果将是0
,而不是所需的00:00
我一直在尝试从this article没有成功的建议。
"Prod - Sun 2:00" -match "\b(Thu|Fri|Sat|Sun).([012]?[0-9][:]\d{2})" | Out-Null
$a = $Matches[2]
$a.ToString("00:00")
返回错误无法找到“ToString”的过载和参数计数:“1”。
我这样做的目标是将数据传递到PowerShell以获取直到该重启时间的天数。举例来说,如果星期六运行,星期日凌晨2点需要添加1天。
我结束了使用这个与其他代码片段一起使用,我得到的价值,我再次感谢! – user4317867