Skip to content
PowerShell Commands


New-ScheduledTaskAction [-Execute*] <String> [[-Argument] <String>] [[-WorkingDirectory] <String>] [-CimSession<CimSession[]>] [-Id <String>] [-ThrottleLimit <Int32>] [<CommonParameters>]

The New-ScheduledTaskAction cmdlet creates an object that contains the definition of a scheduled task action. A scheduled task action represents a command that a task executes when Task Scheduler runs the task. You can use a task action definition to register a new scheduled task or update an existing task registration.

A task can have a single action or a maximum of 32 actions. When you specify multiple actions, Task Scheduler executes the actions sequentially. The Task Scheduler service controls tasks activation, and it hosts the tasks that it starts.


-Argument [<String>]

Specifies arguments for the command-line operation.

-CimSession [<CimSession[]>]

Runs the cmdlet in a remote session or on a remote computer. Enter a computer name or a session object, such as the output of a New-CimSession or Get-CimSession cmdlet. The default is the current session on the local computer.

-Execute <String>

  • This value is required

Specifies the path to an executable file.

-Id [<String>]

Specifies an identifier of an action. Task Scheduler uses this identifier for logging.

-ThrottleLimit [<Int32>]

Specifies the maximum number of concurrent operations that can be established to run the cmdlet. If this parameter is omitted or a value of 0 is entered, then Windows PowerShellr calculates an optimum throttle limit for the cmdlet based on the number of CIM cmdlets that are running on the computer. The throttle limit applies only to the current cmdlet, not to the session or to the computer.

-WorkingDirectory [<String>]

Specifies a directory where Task Scheduler will run the task. If you do not specify a working directory, Task Scheduler runs the task in the %windir%\system32 directory.


This cmdlet supports the common parameters: Verbose, Debug,ErrorAction, ErrorVariable, WarningAction, WarningVariable,OutBuffer, PipelineVariable, and OutVariable.

  1. Create a scheduled task action:
    PS C:\>  New-ScheduledTaskAction -Execute "PowerShell.exe"

    This command creates a new scheduled task action that runs PowerShell.exe.

This work is licensed under a Creative Commons Attribution 4.0 International. It is attributed to Microsoft Corporation and can be found here.

PowerShell Commands