Powershell - Datumswerte vergleichen geht nicht
Hi,
habe hier ein kleines Problem mit Powershell.
Ich will Zertifikate aus dem Windows Certificate Store des Benutzer abfragen und abgelaufene Zertifikate anzeigen. Aber das Vergleichen von "NotAfter" mit "Jetzt" (Get-Date) funktioniert nicht.
Habe unten drei Abfragen.
Die Erste
- liefert drei Zertifikate --> eins davon ist abgelaufen
- bei allen meldet er beim "kleiner als jetzt"-Vergleich "False".
Die Zweite
- liefert die selben drei Zertifikate --> eins davon ist abgelaufen
- bei allen meldet er beim "größer als jetzt"-Vergleich "True".
Die Dritte
- liefert die selben drei Zertifikate --> eins davon ist abgelaufen
- bei allen meldet er beim "ist gleich jetzt"-Vergleich "False".
Er müsste doch beim zweiten Zertifikat melden, dass "10/27/2117 00:00:00" kleiner ist als "01/09/2018 00:00:00"? Oder umgehkehrt letzteres größer?
Bin ich blind oder was mache ich falsch?
E.
habe hier ein kleines Problem mit Powershell.
Ich will Zertifikate aus dem Windows Certificate Store des Benutzer abfragen und abgelaufene Zertifikate anzeigen. Aber das Vergleichen von "NotAfter" mit "Jetzt" (Get-Date) funktioniert nicht.
Habe unten drei Abfragen.
Die Erste
- liefert drei Zertifikate --> eins davon ist abgelaufen
- bei allen meldet er beim "kleiner als jetzt"-Vergleich "False".
Die Zweite
- liefert die selben drei Zertifikate --> eins davon ist abgelaufen
- bei allen meldet er beim "größer als jetzt"-Vergleich "True".
Die Dritte
- liefert die selben drei Zertifikate --> eins davon ist abgelaufen
- bei allen meldet er beim "ist gleich jetzt"-Vergleich "False".
Er müsste doch beim zweiten Zertifikat melden, dass "10/27/2117 00:00:00" kleiner ist als "01/09/2018 00:00:00"? Oder umgehkehrt letzteres größer?
Bin ich blind oder was mache ich falsch?
E.
PS C:\Windows\system32> Get-childItem Cert:\CurrentUser\My | foreach{"NotAfter: " + $_.NotAfter.Date; "Jetzt: " + (Get-Date).Date; "kleiner: " + ($_.NotAfter.Date -lt (Get-Date).Date) }
NotAfter: 09/05/2018 00:00:00
Jetzt: 01/09/2018 00:00:00
kleiner: False
NotAfter: 10/27/2117 00:00:00
Jetzt: 01/09/2018 00:00:00
kleiner: False
NotAfter: 06/13/2022 00:00:00
Jetzt: 01/09/2018 00:00:00
kleiner: False
PS C:\Windows\system32> Get-childItem Cert:\CurrentUser\My | foreach{"NotAfter: " + $_.NotAfter.Date; "Jetzt: " + (Get-Date).Date; "größer: " + ($_.NotAfter.Date -gt (Get-Date).Date) }
NotAfter: 09/05/2018 00:00:00
Jetzt: 01/09/2018 00:00:00
größer: True
NotAfter: 10/27/2117 00:00:00
Jetzt: 01/09/2018 00:00:00
größer: True
NotAfter: 06/13/2022 00:00:00
Jetzt: 01/09/2018 00:00:00
größer: True
PS C:\Windows\system32> Get-childItem Cert:\CurrentUser\My | foreach{"NotAfter: " + $_.NotAfter.Date; "Jetzt: " + (Get-Date).Date; "gleich: " + ($_.NotAfter.Date -eq (Get-Date).Date) }
NotAfter: 09/05/2018 00:00:00
Jetzt: 01/09/2018 00:00:00
gleich: False
NotAfter: 10/27/2117 00:00:00
Jetzt: 01/09/2018 00:00:00
gleich: False
NotAfter: 06/13/2022 00:00:00
Jetzt: 01/09/2018 00:00:00
gleich: False
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 360444
Url: https://administrator.de/forum/powershell-datumswerte-vergleichen-geht-nicht-360444.html
Ausgedruckt am: 31.03.2025 um 14:03 Uhr
4 Kommentare
Neuester Kommentar

dass "10/27/2117 00:00:00" kleiner ist als "01/09/2018 00:00:00"?
Nö ist schon alles richtig Älteres Datum ist immer kleiner als ein Neueres. 2117 ist ja wohl größer als 2017
Abgelaufene Zertfikate auf die schnelle anzeigen:
gci Cert:\CurrentUser\my | ?{$_.NotAfter -lt (get-date)} | select Thumbprint,NotAfter,Subject
Tass Kaffee rüberschieb ...

Na dann beten wir mal das es uns bis dahin noch gibt
.