What is the Windows version of cron?

WindowsCronSchedulingScheduled Tasks

Windows Problem Overview


A Google search turned up software that performs the same functions as cron, but nothing built into Windows.

I'm running Windows XP Professional, but advice for any version of Windows would be potentially helpful to someone.

Is there also a way to invoke this feature (which based on answers is called the Task Scheduler) programatically or via the command line?

Windows Solutions


Solution 1 - Windows

For the original question, asking about Windows XP (and Windows 7): Windows Task Scheduler

For command-line usage, you can schedule with the AT command.

For newer Microsoft OS versions, Windows Server 2012 / Windows 8, look at the schtasks command line utility.
If using PowerShell, the Scheduled Tasks Cmdlets in Windows PowerShell are made for scripting.

Solution 2 - Windows

The Windows "AT" command is very similar to cron. It is available through the command line.

Solution 3 - Windows

Use the Windows Task Scheduler to schedule tasks over time and dates.

Solution 4 - Windows

pycron is close match on Windows. The following entries are supported:

1    Minute (0-59)
2    Hour (2-24)
3    Day of month (1-31)
4    Month (1-12, Jan, Feb, etc)
5    Day of week (0-6) 0 = Sunday, 1 = Monday etc or Sun, Mon, etc)
6    User that the command will run as
7    Command to execute

Solution 5 - Windows

The 'at' command.

> "The AT command schedules commands and > programs to run on a computer at a > specified time and date. The Schedule > service must be running to use the AT > command."

Solution 6 - Windows

Zcron is available free for personal use.

Solution 7 - Windows

The closest equivalent are the Windows Scheduled Tasks (Control Panel -> Scheduled Tasks), though they are a far, far cry from cron.

The biggest difference (to me) is that they require a user to be logged into the Windows box, and a user account (with password and all), which makes things a nightmare if your local security policy requires password changes periodically. I also think it is less flexible than cron as far as setting intervals for items to run.

Solution 8 - Windows

> Is there also a way to invoke this feature (which based on answers is called the Task Scheduler) programatically [...]?

Task scheduler API on MSDN.

Solution 9 - Windows

If you prefer good ol' cron, CRONw is the way to go.

Supported systems

* Windows 2000 (any version)	works
* Windows XP (SP 2)	            works
* Windows Server 2003	        works
* Windows NT 4 (SP 6)	        should work but not tested
* Windows 3.11, Windows 95,
  Windows 98, Windows ME,
  Windows XP beneath SP2	    not supported by design

Solution 10 - Windows

Not exactly a Windows version, however you can use Cygwin's crontab. For install instructions, see here: here.

Solution 11 - Windows

There is NNCron for Windows. IT can schedule jobs to be run periodically.

Solution 12 - Windows

In addition to Windows Task Scheduler you also have 'at' on Windows. I'm not sure how it differs from Task Scheduler besides the fact that it has a command line interface.

Solution 13 - Windows

The At command is now deprecated

you can use the SCHTASKS

Solution 14 - Windows

  1. You can use the Scheduled-Tasks API in PowerShell along with a config.json file for parameters input. I guess the minimum limitation is 5 minutes. A sample tutorial for very basic Schedule Tasks creation via APIs

  2. You can use the schtasks.exe via cmd too. I could see the minute modifier limitation to 1 minute on executing schtasks.exe /Create /?. Anyways AT is now deprecated.

enter image description here

Anyways, I am working on a tool to behave like CRON. I will update here if it is successfull.

Solution 15 - Windows

Check out the excellent Cronical program at https://github.com/mgefvert/Cronical

It is a .NET program that reads a text file with unix-like cron lines. Very convenient to use. It will send emails if stdout just like unix cron. It even supports acting as the service runner.

Attributions

All content for this solution is sourced from the original question on Stackoverflow.

The content on this page is licensed under the Attribution-ShareAlike 4.0 International (CC BY-SA 4.0) license.

Content TypeOriginal AuthorOriginal Content on Stackoverflow
QuestionThomas OwensView Question on Stackoverflow
Solution 1 - WindowsKris KumlerView Answer on Stackoverflow
Solution 2 - WindowsstephenbayerView Answer on Stackoverflow
Solution 3 - WindowsDror HelperView Answer on Stackoverflow
Solution 4 - Windowsuser816347View Answer on Stackoverflow
Solution 5 - WindowsleppieView Answer on Stackoverflow
Solution 6 - WindowsZsolt BotykaiView Answer on Stackoverflow
Solution 7 - WindowsckramerView Answer on Stackoverflow
Solution 8 - WindowsAdam MitzView Answer on Stackoverflow
Solution 9 - WindowsenobrevView Answer on Stackoverflow
Solution 10 - WindowsPrzemek KrygerView Answer on Stackoverflow
Solution 11 - Windowsshasi kanthView Answer on Stackoverflow
Solution 12 - Windowsjm4View Answer on Stackoverflow
Solution 13 - WindowsSaher AhwalView Answer on Stackoverflow
Solution 14 - WindowsPikesh PrasoonView Answer on Stackoverflow
Solution 15 - WindowsCominventView Answer on Stackoverflow