Zum Hauptinhalt springen

Geplante Tasks in Powershell mit lokaler Zeit anlegen

Wenn man in Powershell einen zeitgesteuerten geplanten Task anlegen will, erzeugt das Cmdlet New-ScheduledTaskTrigger standardmäßig einen Trigger, dessen Zeit in UTC (Universal Naming Convention oder Greenich Mean Time) angegeben ist. In der grafischen Oberfläche des Taskplaners wird das durch einen Haken "Zeitzonenübergreifende Synchronisation" angezeigt. 

Ein Tasktrigger im Windows Aufgaben-Planer

Um einen Trigger mit lokaler Zeit anzulegen, muss man den Trigger nachträglich bearbeiten, da es keine Möglichkeit gibt, dem Cmdlet beim Erzeugen des Triggers mitzugeben, dass man lokale Zeit verwenden möchte. Die Zeit wird dabei im Trigger in der Eigenschaft StartBoundary als Text im Format "yyyy-MM-ddThh:mm:ss" abgelegt, wobei UTC-Zeit mit einem Z am Ende gespeichert wird. 

$trigger = New-ScheduledTaskTrigger -Daily -At '18:00:00'
$trigger
Enabled            : True
EndBoundary        :
ExecutionTimeLimit :
Id                 :
Repetition         :
StartBoundary      : 2025-10-31T17:00:00Z
DaysInterval       : 1
RandomDelay        :
PSComputerName     : 

Was auffällt ist, dass New-ScheduledTaskTrigger die Zeit beim Erstellen automatisch in UTC umrechnet. Im Beispiel wurde als Startzeit 18:00:00 Uhr (MEZ) angegeben, der Trigger hat aber 17:00:00 Uhr (UTC) gespeichert. Es reicht also nicht, das Z am Ende des Strings abzuschneiden. Stattdessen muss die Zeit zuerst wieder in lokale Zeit umgewandelt werden, was Get-Date erledigt, und anschließend wieder in den passenden String umgewandelt werden. 

$trigger = New-ScheduledTaskTrigger -Daily -At '18:00:00'
$Trigger.StartBoundary = ( Get-Date -Date $trigger.StartBoundary ).ToString('yyyy-MM-ddTHH:mm:ss')
$trigger
Enabled            : True
EndBoundary        :
ExecutionTimeLimit :
Id                 :
Repetition         :
StartBoundary      : 2025-10-31T18:00:00
DaysInterval       : 1
RandomDelay        :
PSComputerName     : 
×
Stay Informed

When you subscribe to the blog, we will send you an e-mail when there are new updates on the site so you wouldn't miss them.

Mit Powershell schneller Hashen
 

Comments

No comments made yet. Be the first to submit a comment
Already Registered? Login Here
Freitag, 14. November 2025