Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Create scheduled task with powershell

I have this script to create a scheduled task in using PowerShell which works fine however I can't figure out how to "Set and expiry date", "Run with highest privileges" and "stop the task if its running longer then".

$taskName = "TestTask"
$user = "<....>"
$password = "<...>"
$action = New-ScheduledTaskAction -Execute "notepad.exe" 
$trigger = New-ScheduledTaskTrigger -Weekly -AT "23:00" -DaysOfWeek 'Monday', 'Tuesday', 'Wednesday'
$settings = New-ScheduledTaskSettingsSet 
$inputObject = New-ScheduledTask -Action $action -Trigger $trigger -Settings $settings 
Register-ScheduledTask -TaskName $taskName -InputObject $inputObject -User $user -Password $password
like image 579
Ren-Heok Avatar asked Feb 02 '26 16:02

Ren-Heok


1 Answers

You need to specify the appropriate parameters on the New-ScheduledTaskSettingsSet command e.g.

$settings = New-ScheduledTaskSettingsSet `
                -ExecutionTimeLimit ([TimeSpan]::FromHours(2)) `
                -DeleteExpiredTaskAfter ([TimeSpan]::FromDays(60) 
Register-ScheduledTask ... -Settings $settings -RunLevel Highest

Look at this help topic for more info on the New-ScheduledTaskSettingsSet command.

like image 66
Keith Hill Avatar answered Feb 04 '26 07:02

Keith Hill



Donate For Us

If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!