Reminder nachdem Uhrzeit erreicht ist
Hey,
ich würde gerne ein skript erstellen, was einen reminder in form einer textnachricht ausgibt, sobald es 11:50 Uhr ist.
allerdings hat es bisher nicht so ganz geklappt.
Außerdem sollte das skript nur von Montag - Freitag laufen.
ich würde gerne ein skript erstellen, was einen reminder in form einer textnachricht ausgibt, sobald es 11:50 Uhr ist.
allerdings hat es bisher nicht so ganz geklappt.
Außerdem sollte das skript nur von Montag - Freitag laufen.
$time = Get-Date
$headline = "lunchtimer"
$text = "in 10 minutes is lunchtime"
if ($time == get-date -hour 11 -minute 50 then
[System.Windows.Forms.MessageBox]::Show($text,$headline,0)
)
endif
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 4235611082
Url: https://administrator.de/contentid/4235611082
Ausgedruckt am: 21.11.2024 um 22:11 Uhr
12 Kommentare
Neuester Kommentar
Hallo, wo bist du? Bei welcher Sprache ^^
== find ich immer schön. Leider will PS sowas wie "-eq" etc.
$(...) wertet alles innerhalb vorher aus, damit es zum Vergleichen heranziehen kann.
== find ich immer schön. Leider will PS sowas wie "-eq" etc.
$(...) wertet alles innerhalb vorher aus, damit es zum Vergleichen heranziehen kann.
$time = Get-Date
$headline = "lunchtimer"
$text = "in 10 minutes is lunchtime"
if ($time -eq $(get-date -hour 14 -minute 56)) {
[System.Windows.Forms.MessageBox]::Show($text,$headline,0)
}
Moin,
Dann solltest Du Dich mal mit der Syntax dieser Sprache beschäftigen insbesondere den Vergleichsoperatoren. Und ENDIF gibbet da auch nicht.
Die Lösung von @Crusher79 ist auch nur fast richtig,
hth
Erik
Dann solltest Du Dich mal mit der Syntax dieser Sprache beschäftigen insbesondere den Vergleichsoperatoren. Und ENDIF gibbet da auch nicht.
leider funktioniert bei mir die lösung allerdings noch nicht.
Die Lösung von @Crusher79 ist auch nur fast richtig,
$time = Get-Date -DisplayHint Time
$headline = "lunchtimer"
$text = "in 10 minutes is lunchtime"
if ($time -eq $(get-date -hour 14 -minute 56)) {
[System.Windows.Forms.MessageBox]::Show($text,$headline,0)
}
hth
Erik
Wegen der Uhrzeit jetzt oder wie? ^^ Ich war mir nicht sicher, ob nicht wegen "Windows" doch C# gefragt war. Auch wenn das einbinden auf PS hingewiesen hat.
Jo. Ohne den displayhint ist der Vergleich falsch und damit geht der TO doch nicht essen. Ich habe für sowas ja einen Kalender. Aber warum nicht auch per Skript.
@erikro wer weiß wozu es gut ist! Nur weil man mal sehen wollte, ob der Kaffee schon durchgelaufen ist gibt es Webcams. Wird vlt. ein großes Ding - und wir waren dabei.
$time = Get-Date -DisplayHint Time
$headline = "lunchtimer"
$text = "in 10 minutes is lunchtime"
if ($time -eq $(get-date -hour 11-minute 50)) {
[System.Windows.Forms.MessageBox]::Show($text,$headline,0)
}
Zitat von @Crusher79:
@erikro wer weiß wozu es gut ist! Nur weil man mal sehen wollte, ob der Kaffee schon durchgelaufen ist gibt es Webcams. Wird vlt. ein großes Ding - und wir waren dabei.
@erikro wer weiß wozu es gut ist! Nur weil man mal sehen wollte, ob der Kaffee schon durchgelaufen ist gibt es Webcams. Wird vlt. ein großes Ding - und wir waren dabei.
Ich fange gleich mit dem RFC an: htltcp
Moin,
wie ich dir in dem Beitrag schon geschrieben habe Zeit bis Uhrzeit ist die Uhrzeit recht gefährlich.
Get-Date -DisplayHint Time ergibt zum Beispiel: 16:47:19
(get-date -hour 11-minute 50) ergibt: Dienstag, 11. Oktober 2022 16:47:19
Beachte, dass du hier immer die aktuellen Sekunden hast.
$time wird mit DisplayHint Time wird daher niemals identisch sein, da du unterschiedliche Formate miteinander vergleichst.
Vergleiche:
Gruß
Doskias
wie ich dir in dem Beitrag schon geschrieben habe Zeit bis Uhrzeit ist die Uhrzeit recht gefährlich.
Get-Date -DisplayHint Time ergibt zum Beispiel: 16:47:19
(get-date -hour 11-minute 50) ergibt: Dienstag, 11. Oktober 2022 16:47:19
Beachte, dass du hier immer die aktuellen Sekunden hast.
$time wird mit DisplayHint Time wird daher niemals identisch sein, da du unterschiedliche Formate miteinander vergleichst.
Vergleiche:
$zeit1=Get-Date -DisplayHint Time
$zeit2=(get-date -hour 16 -minute 51 -Second 40)
if ($zeit1 -eq $zeit2) {write-host "Zeit ist gleich"} else {write-host "Zeit ist anders"}
Gruß
Doskias
Ups sorry, ich hats Stumpf übernommen. Normal mach ichi Date Diff immer so. Das Objekt enthält ja dann alle relevanten Werte.....
So ginge es auch. Hatte kurz mal wie wild aktualsiert. Und auch je nach Datum sowas wie "250,00001669166" Minuten raus - Float. Dachte die Minuten wären von Haus aus immer ganze Zahlen...
Auch irgendwie tödlich wenn man hier immer ganze Minuten erwartet. Muss noch mal in die Objektbeschreibung schauen. Dachte aber Stunden, Minuten etc. wären ganze Zahlen.
$Diffobj = $(Get-Date) - $(Get-Date -Hour 17 -Minute 28)
$Diffobj.TotalMinutes
So ginge es auch. Hatte kurz mal wie wild aktualsiert. Und auch je nach Datum sowas wie "250,00001669166" Minuten raus - Float. Dachte die Minuten wären von Haus aus immer ganze Zahlen...
Auch irgendwie tödlich wenn man hier immer ganze Minuten erwartet. Muss noch mal in die Objektbeschreibung schauen. Dachte aber Stunden, Minuten etc. wären ganze Zahlen.