今天(2017-05-29)我在Windows 7企业版上使用PowerShell 5.0.10586.117并运行以下命令(缩短):
$dateOfLicense = "2017-04-20"
$dateOfToday = '{0:yyyy-MM-dd}' -f (Get-Date)
$TimeDifference = [DateTime]$dateOfToday - [DateTime]$dateOfLicense
if (($TimeDifference) = 14)
{
Write-Host "test"
}
即使这两天之间的时间差是39,我的代码也会跳到if子句中,然后将“test”发送到屏幕。
我在这里做错了什么?
最佳答案
您正在将14
分配给$TimeDifference
。相反,您将不使用Days
比较-le
属性:
if ($TimeDifference.Days -le 14)
{
Write-Host "test"
}