OKAll services are operational
InfrawireInfrawire LogoDocumentation

Configure a scheduled task on Windows Server

Task Scheduler runs scripts or programs automatically at a set time, at startup, or on events — useful for backups, log rotation, or controlled reboots on your Windows VPS.

Typical use cases

  • Copy folders to another disk or share
  • Export configuration or database dumps
  • Compress or rotate log files

Method 1: Graphical UI

  1. Open Task Scheduler (taskschd.msc).
  2. Create Task… (for full control; not only “Create Basic Task”).
  3. General tab: name e.g. Daily backup, check Run with highest privileges if needed.
  4. Triggers tab: New…Daily at your time.
  5. Actions tab: New…Start a program
    • Program: powershell.exe
    • Arguments: -ExecutionPolicy Bypass -File "C:\Scripts\backup.ps1"
  6. Conditions / Settings: disable sleep-related blocks if the task must run without an interactive user.

Method 2: PowerShell (daily at 3:00 AM)

Create C:\Scripts\backup.ps1 (minimal example — adapt):

PowerShell
$dest = "D:\Backups" New-Item -ItemType Directory -Force -Path $dest | Out-Null Copy-Item -Path "C:\inetpub\mysite" -Destination (Join-Path $dest ("site_" + (Get-Date -Format "yyyyMMdd"))) -Recurse -Force

Register the task:

PowerShell
$action = New-ScheduledTaskAction -Execute "powershell.exe" -Argument '-ExecutionPolicy Bypass -File "C:\Scripts\backup.ps1"' $trigger = New-ScheduledTaskTrigger -Daily -At 3am $principal = New-ScheduledTaskPrincipal -UserId "SYSTEM" -LogonType ServiceAccount -RunLevel Highest Register-ScheduledTask -TaskName "DailySiteBackup" -Action $action -Trigger $trigger -Principal $principal

Verify:

PowerShell
Get-ScheduledTask -TaskName "DailySiteBackup" Start-ScheduledTask -TaskName "DailySiteBackup"

Best practices

  • Run the script manually before scheduling.
  • Log output to a file inside the .ps1.
  • Protect scripts that contain secrets; use service accounts with least privilege.

Troubleshooting

  • Task does not run: check Event Viewer → Windows Logs → Application and Task Scheduler operational log.
  • Error 0x1: often wrong path, missing script, or execution policy; use -ExecutionPolicy Bypass as above.

See also initial Windows VPS setup.