Benutzer mit den meisten Antworten
Ausgegebenes Datum - Zeitdifferenz berechnen

Frage
-
Hallo,
Vorweg: Ich bin auf der PS leider nicht so bewandert.
Ich habe aktuell eine kleine Aufgabe zu lösen.
Hoffe das mir hier jemand weiterhelfen kann.Ich kann eine Zertifikatsabfrage machen.
Ich bekomme auch den von mir benötigten Wert "NotAfter" mit dem Ablaufdatum meines Zertifikates zurück.
Nun muss ich es irgendwie schaffen das ich von diesem Datum die Zeitdifferenz ermittle. Sprich ich würde die aktuellen Tage bis zum Ablauf des Zertifikats benötigen.
Das Ziel ist es dann diesen Wert mit meinem Monitoring System abzufragen damit ich sehe wie lange auf meiner Maschine das Zerfifikat noch gültig ist.
Kann mir hier jemand eventuell helfen und mir sagen wie ich da am besten rangehen soll.
Vielen herzlichen Dank schon im Voraus
LG
MandragoraHier der Link zum Screenshot
kann leider noch keine Bilder einbindenhttps://i.imgur.com/NM6agxn.png
- Bearbeitet mandragora99 Donnerstag, 1. Februar 2018 09:09
Antworten
-
Moin,
es kommt darauf an, was für ein Datentyp das ist. Kannst Du den abgebildeten Output nach Get-Member pipen und schauen, ob die Property "NotAfter" vom Typ "datetime" ist?
Ist dies der Fall, kannst Du die Differenz einfach bilden mit
$days_to_live = ((<Dein obiger Aufruf>).NotAfter - (Get-Date)).TotalDays
Ansonsten kannst Du schauen, ob Du mit
Get-Date (<Dein obiger Aufruf>).NotAfter
einen validen datetime-Wert bekommst, dann kannst Du auch wieder eine Differenz bilden.
Evgenij Smirnov
I work @ msg services ag, Berlin -> http://www.msg-services.de
I blog (in German) @ http://it-pro-berlin.de
my stuff in PSGallery --> https://www.powershellgallery.com/profiles/it-pro-berlin.de/
Exchange User Group, Berlin -> https://exusg.de
Windows Server User Group, Berlin -> http://www.winsvr-berlin.de
Mark Minasi Technical Forum, reloaded -> http://newforum.minasi.com
In theory, there is no difference between theory and practice. In practice, there is.
- Als Antwort vorgeschlagen Denniver ReiningMVP, Moderator Samstag, 3. Februar 2018 11:26
- Als Antwort markiert Denniver ReiningMVP, Moderator Donnerstag, 8. Februar 2018 10:52
Alle Antworten
-
Moin,
es kommt darauf an, was für ein Datentyp das ist. Kannst Du den abgebildeten Output nach Get-Member pipen und schauen, ob die Property "NotAfter" vom Typ "datetime" ist?
Ist dies der Fall, kannst Du die Differenz einfach bilden mit
$days_to_live = ((<Dein obiger Aufruf>).NotAfter - (Get-Date)).TotalDays
Ansonsten kannst Du schauen, ob Du mit
Get-Date (<Dein obiger Aufruf>).NotAfter
einen validen datetime-Wert bekommst, dann kannst Du auch wieder eine Differenz bilden.
Evgenij Smirnov
I work @ msg services ag, Berlin -> http://www.msg-services.de
I blog (in German) @ http://it-pro-berlin.de
my stuff in PSGallery --> https://www.powershellgallery.com/profiles/it-pro-berlin.de/
Exchange User Group, Berlin -> https://exusg.de
Windows Server User Group, Berlin -> http://www.winsvr-berlin.de
Mark Minasi Technical Forum, reloaded -> http://newforum.minasi.com
In theory, there is no difference between theory and practice. In practice, there is.
- Als Antwort vorgeschlagen Denniver ReiningMVP, Moderator Samstag, 3. Februar 2018 11:26
- Als Antwort markiert Denniver ReiningMVP, Moderator Donnerstag, 8. Februar 2018 10:52
-
Hallo Evgenij,
Erstmal vielen Dank für deine schnelle Antwort.
Mit der ersten von dir geposteten Abfrage bekomme ich nichts ausgegeben.
Was meinst du mit "Datentyp" ?Mit der zweiten Abfrage erhalte ich das Datum ausgeben
Sonntag, 23. September 2018 01:59:59
Wie ich aber hier die Differenz bilde weiß ich aber leider nicht.
Wie gesagt absoluter PS noob :(
Danke für deine Geduld und Hilfe.
LG
mandragora -
Mit der ersten von dir geposteten Abfrage bekomme ich nichts ausgegeben.
Ja, weil er das in die Variable schreibt. Gib deren Inhalt mal aus (einfach $days_to_live <ENTER>) ;-)Evgenij Smirnov
I work @ msg services ag, Berlin -> http://www.msg-services.de
I blog (in German) @ http://it-pro-berlin.de
my stuff in PSGallery --> https://www.powershellgallery.com/profiles/it-pro-berlin.de/
Exchange User Group, Berlin -> https://exusg.de
Windows Server User Group, Berlin -> http://www.winsvr-berlin.de
Mark Minasi Technical Forum, reloaded -> http://newforum.minasi.com
In theory, there is no difference between theory and practice. In practice, there is.
-
:-)
Vielen Dank.. Ja auf das hätte ich auch kommen können :) wie gesagt bin halt noob :)
Die Ausgabe sieht jetzt so aus
233,608883311722
Also Sprich sollten es noch 233 Tage bis zu diesem Datum sein.
Werde jetzt noch versuchen bis zum , alles wegzuschneiden damit ich die reinen Tage bekomme.
Vielen Dank Evgenij
Du rettest mir schon mal den Tag damit :)
LG
Mandragora -
Für Mandragora ... zum Veranschaulichung was Martin meint:
$Start = '1.1.2010' $Ende = '31.12.2018' New-TimeSpan -Start $Start -End $Ende -OutVariable Differenz
Damit hast Du jetzt die Differenz zwischen Start und Ende in der Variable $Differenz gespeichert. Ausgeben kannst Du sie so:
$Differenz
... oder wenn Du auf eine bestimmte Eigenschaft zugreifen magst z.B. so:$Differenz.Days
Lass doch einfach Powershell die Arbeit für Dich machen ... ;-)
Best regards,
(79,108,97,102|%{[char]$_})-join''
- Bearbeitet BOfH-666 Donnerstag, 1. Februar 2018 15:02
-