diff --git a/docs/task-scheduler.md b/docs/task-scheduler.md index 7f26e64..eba6d65 100644 --- a/docs/task-scheduler.md +++ b/docs/task-scheduler.md @@ -49,6 +49,27 @@ $trigger = New-ScheduledTaskTrigger -Weekly -DaysOfWeek Sunday -At "03:00" Den Rest wie oben, nur den Trigger austauschen. +### Monatlich (z.B. erster Montag im Monat um 04:00 Uhr) + +```powershell +$trigger = New-ScheduledTaskTrigger -Weekly -DaysOfWeek Monday -WeeksInterval 1 -At "04:00" + +# New-ScheduledTaskTrigger bietet kein -Monthly mit Wochentag-Option, +# daher wird der CIM-Trigger verwendet (entspricht GUI → "Monatlich"): +$trigger = New-CimInstance -CimClass ( + Get-CimClass -Namespace "Root/Microsoft/Windows/TaskScheduler" ` + -ClassName "MSFT_TaskMonthlyDOWTrigger" +) -ClientOnly -Property @{ + DaysOfWeek = [int16]2 # Montag (So=1, Mo=2, Di=4, Mi=8, Do=16, Fr=32, Sa=64) + WeeksOfMonth = [int16]1 # Erste Woche + Months = [int16]4095 # Alle 12 Monate (Bit-Summe: 1+2+4+...+2048) + Enabled = $true +} +$trigger.StartBoundary = (Get-Date "04:00").ToString("yyyy-MM-dd'T'HH:mm:ss") +``` + +Den Rest wie beim täglichen Beispiel, nur den Trigger austauschen. + ### Bestehende Aufgabe ändern ```powershell