使用powershell 5.1
我有一个函数,该函数返回一个表示日期的字符串,像这样 “ 4/22/2019 12:00:00 AM”
function Get-LastLogTime() {
$lastRunDate = Get-SQLData "." "AdHoc" "SELECT TOP 1 o.LogTime FROM dbo.FAQlog o WHERE o.RecordsSent = 1 ORDER BY o.LogTime DESC"
return $lastRunDate
}
其中LogTime是通常的Datetime SQL类型,而Get-SQLData
是另一个返回数据表的函数。
如果我只检查返回值,就会得到类似这样的信息
LogTime ------- 4/22/2019 12:00:00 AM
好的,很好,但是我需要将此日期与当前日期进行比较。因此,我做了类似的事情,但是在尝试将$testDate
转换为日期时间的那行出现错误。
# test
$testDate = Get-LastLogTime
([DateTime]$testDate) -lt (Get-Date)
如果我只是在命令行中进行简单比较,则可以正常工作,例如。
([DateTime]"4/22/2019 12:00:00 AM" ) -lt (Get-Date)
答案 0 :(得分:0)
它与 ([DateTime]“ 2019/4/22 12:00:00”) 因为您将DateTime强制转换为字符串。
返回值Get-LastLogTime
可能不是字符串,并且将其强制转换为Datetime无效。
get-LastLogTime | get-member
将为您显示返回的数据类型上可用的方法,例如ToString
,这些方法可用于执行比较。