注册表包含一个键,其字符串值非常类似于:
23-01-2015 14-58-00
使用PowerShell我需要比较这个日期,以确保它大于(Get-Date).AddDays(-1)
返回的值。但是格式不同,我不能在两者之间进行比较,也不能格式化Get-Date,因为.AddDays
不能对字符串运行。有任何想法吗?
答案 0 :(得分:4)
您需要使用ParseExact:
[datetime]::ParseExact("23-01-2015 14-58-00","dd-MM-yyyy HH-mm-ss",$null)
Friday, January 23, 2015 2:58:00 PM
这将输出DateTime对象。 "dd-MM-yyyy HH-mm-ss"
是指定所需DateTime格式的特定映射,使用DateTime format placeholders表示年,月,日等。如果我没有假设格式占位符正确,只需点击上面的链接即可查找你想要的。
之后,您可以按预期比较两个DateTime对象:
$myDate = [datetime]::ParseExact("23-01-2015 14-58-00","dd-MM-yyyy HH-mm-ss",$null)
$myDate -gt (Get-Date).AddDays(-1)
True