use*_*792 4 powershell datetime date-comparison
据我所知,我有两个相同的日期.
$theDate = (Get-Date -Hour 0 -Minute 00 -Second 00)
$otherDate = (Get-Date -Hour 0 -Minute 00 -Second 00)
Run Code Online (Sandbox Code Playgroud)
按顺序执行
这两个都显示为Monday, May 11, 2015 12:00:00 AM,但是当我这样做($theDate -eq $otherDate)时返回false.我试着$theDate.equals($otherDate)和 (($theDate) -eq ($otherDate))同样的事情.我唯一可以归还的是($theDate -gt $otherDate)
我是疯了还是只是一个菜鸟?
iCo*_*dez 10
您忘记了毫秒字段,这两个字段在两个日期时间不同:
PS > $theDate = (Get-Date -Hour 0 -Minute 00 -Second 00)
PS > $otherDate = (Get-Date -Hour 0 -Minute 00 -Second 00)
PS > $theDate.Millisecond
122
PS > $otherDate.Millisecond
280
Run Code Online (Sandbox Code Playgroud)
将这些字段设置为相同的值可以解决问题:
PS > $theDate = (Get-Date -Hour 0 -Minute 00 -Second 00 -Millisecond 000)
PS > $otherDate = (Get-Date -Hour 0 -Minute 00 -Second 00 -Millisecond 000)
PS > $theDate -eq $otherDate
True
Run Code Online (Sandbox Code Playgroud)
虽然将两个变量分配到同一个日期时间可能更容易:
PS > $theDate = (Get-Date -Hour 0 -Minute 00 -Second 00)
PS > $otherDate = $theDate
PS > $theDate -eq $otherDate
True
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
987 次 |
| 最近记录: |