divinefaith
Goto Top

Zeit bis Uhrzeit

Moin,

ich würde gerne ein powershell skript erstellen, was berechnet wie lange es noch bis zu einer bestimmten Uhrzeit dauert.
Leider komme ich jetzt aber nicht weiter voran.

wäre super wenn ihr mir dabei helfen könnt.

$1 = Get-date -DisplayHint Time 
$2 = "11:30:00" - $1  
$2

ich möchte quasi wissen wie lange es noch bis 11:30 Uhr dauert.

Content-ID: 4230925440

Url: https://administrator.de/contentid/4230925440

Ausgedruckt am: 22.11.2024 um 05:11 Uhr

erikro
Lösung erikro 11.10.2022 um 09:21:49 Uhr
Goto Top
Moin,

(get-date -hour 11 -minute 30) - (get-date)

hth

Erik
DivineFaith
DivineFaith 11.10.2022 um 09:24:36 Uhr
Goto Top
Danke, genau das meinte ich. Wie könnte ich jetzt die Ausgabe auf die stunde, minute und sekunde begrenzen?
Doskias
Doskias 11.10.2022 aktualisiert um 09:35:52 Uhr
Goto Top
Moin:

Zum Beispiel mit:
$Zeit=(get-date -hour 11 -minute 30) - (get-date)
$Zeit.Hours sind dann Stunden Falls du damit später weiterarbeiten willst.

Die Transferarbeit für Minute und Sekunde schaffst du alleine ;)

Gruß
Doskias

Nachtrag:
Grade aufgefallen:
(get-date -hour 11 -minute 30)
nimmt den aktuellen Tag um 11:30:xx wobei xx, die jetzigen Sekunden sind. Alternative zu dem Get-Date befehl oben:
get-date("11:30:00")  
hierbei werden dann auch die Sekunden auf 00 gesetzt.

Zum Beispiel:
(get-date("11:30:00"))- (get-date)|select hours, minutes, seconds  
erikro
erikro 11.10.2022 um 09:59:49 Uhr
Goto Top
So vielleicht:

((get-date -hour 11 -minute 30) - (get-date)) | write-host -PipelineVariable $_
Doskias
Lösung Doskias 11.10.2022 um 10:40:03 Uhr
Goto Top
Zitat von @erikro:
So vielleicht:
((get-date -hour 11 -minute 30) - (get-date)) | write-host -PipelineVariable $_
Dann würde ich:
((get-date -hour 11 -minute 30 -Second 00) - (get-date)) | write-host -PipelineVariable $_
Sonst hast du hinten immer 00 Sekunden stehen face-wink
TK1987
TK1987 12.10.2022 um 15:04:01 Uhr
Goto Top
Moin,

Zitat von @Doskias:
Dann würde ich:
((get-date -hour 11 -minute 30 -Second 00) - (get-date)) | write-host -PipelineVariable $_
oder einfach
(New-TimeSpan -Start "11:30").ToString()  

Gruß Thomas