Batch Scheduled Tasks

Introduction

Windows Task Scheduler allows you to automate running Batch scripts at specific times, intervals, startup, login, or system triggers. Batch integrates easily with Task Scheduler via the schtasks command.

1. Creating a Scheduled Task (Basic)

Run a script every day at 15:00.

schtasks /create /tn CleanupTemp ^
         /tr "C:\scripts\cleanup.bat" ^
         /sc daily /st 15:00
    

2. Scheduling a Script at Startup

schtasks /create /tn StartupTool ^
         /tr "C:\scripts\tool.bat" ^
         /sc onstart
    

3. Run Script at Logon

schtasks /create /tn LogonBackup ^
         /tr "D:\backup.bat" ^
         /sc onlogon
    

4. Repeat Every X Minutes

schtasks /create /tn Monitor ^
         /tr "C:\monitor\check.bat" ^
         /sc minute /mo 5
    

Runs every 5 minutes.

5. Setting Highest Privileges

Run task as admin:

schtasks /create /tn SysCleaner ^
         /tr "C:\clean\cleaner.bat" ^
         /sc daily /st 18:00 ^
         /rl highest
    

6. Editing an Existing Task

schtasks /change /tn CleanupTemp /st 16:00
    

7. Running a Task Manually

schtasks /run /tn CleanupTemp
    

8. Deleting a Task

schtasks /delete /tn CleanupTemp /f
    

9. List All Tasks

schtasks /query
    

10. Importing a Task from XML

Useful for backup and deployment.

schtasks /create /tn MyTask /xml task.xml
    

11. XML Task Export

schtasks /query /tn MyTask /xml > mytask.xml
    

12. Example: Auto-Cleanup Script at Midnight

schtasks /create /tn AutoCleanup ^
         /tr "C:\scripts\autoclean.bat" ^
         /sc daily /st 00:00
    

13. Example: Run Script When Idle

schtasks /create /tn IdleScan ^
         /tr "C:\scan\scan.bat" ^
         /sc onidle
    

14. Permissions Note

15. Debugging Scheduled Tasks

C:\scripts\cleanup.bat >> C:\logs\cleanup_log.txt 2>&1
    

Summary