XP Pro: Schedule a program to run once at a specific time using schtasks

Contributor Icon Contributed by qmchenry Date Icon May 2, 2004  
Tag Icon Tagged: Windows

Windows XP Professional has a command line utility that allows users to schedule the execution of tasks. The schtasks utility has a wide variety of options. This recipe provides a simple example of scheduling a task to run once in the future.


The minimum parameters required to run a task once are /sc (schedule), /tr (task to run), /st (start time), and /tn (unique task name). This syntax will run the task as the current user. To run the defrag program on the C: drive at 11 PM, use this command:

schtasks /create /sc once /st 23:00:00 /tn cdefrag /tr "defrag c:"

The schedule (/sc once) indicates that the task will only be executed once. The start time (/st 23:00:00) determines the time (HH:MM:SS) that the task will start in the 24 hour format. The task name (/th cdefrag) must be a unique name that can be used to reference the scheduled task later. The task to run (/tr “defrag c:”) specifies the command and parameters to run. Enclosing the task to run in quotes is required for tasks with options.

When you run the command above, it will tell you the user the task will run under (the current user) and will prompt for that user’s password. It is possible to place the password in the command (using /rp password) although to do so may be a security risk — use at your own risk.

If you want to run the task as another user, specify the username with the /ru username command option.

By default, the task will execute within the next 24 hours at the next occurance of the start time. To run the command at the speficied time on a different date, use the /sd mm/dd/yyyy option.

To view the scheduled events, just run schtasks with no options.

Previous recipe | Next recipe |
 
blog comments powered by Disqus