Please also have a look at pycron. It's a more recent development with more features.
Cron scans the file CRONTAB every minute and checks every line if the specified time/date information matches the current time/date. If they are equal, the command line specified will be executed. A log file (cron.log) with the executed commands is written to the current directory.
There are two versions of Cron:
|Cron for Windows 9x/NT||http://www.kalab.com/freeware/cron/cron.zip (22kb)|
|Cron NT service||http://www.kalab.com/freeware/cron/crons.zip (53kb)|
Setup for first version (Windows 9x/NT)
Setup for NT service
The Crontab file
Each line of CRONTAB has the following structure:
<Minute> <Hour> <Day> <Month> <Day of Week> <Command line>
|Day of week||0-6 (0=Sunday, 1=Monday, ..., 6=Saturday)|
Instead of minute, hour, day, month or day of week it's also possible to specify a *. A * represents all possible values for that position (e.g. a * on 2nd position is the same as specifying all the possible values for hour)
It's also possible to specify several values separated by commas: e.g. if you want a command to be executed every 10th minute so you can specify 0,10,20,30,40,50 for minute. A range of values can be specified with a -: e.g. value 0-12 for hour -> every hour a.m.
Every line not starting with a number is treated as a comment.
execute a command every minute
# This is a comment. * * * * * c:\tools\CheckForNewFiles.exe
execute the program backup.bat every hour
# This is a comment. 0 * * * * c:\tests\backup.bat
do a backup every day at 0.30 p.m.
# This is a comment. 30 12 * * * c:\tests\backup.bat
start a backup every tuesday at midnight
# This is a comment. 0 0 * * 3 c:\tests\backup.bat
scan drive c for viruses on the 1st of every month at 2.45 p.m.
# scan for known viruses 45 14 1 * * c:\path_to_scanner\scan c:
copy some files every half hour
# This is a comment. 0,30 * * * * xcopy c:\docs\*.* y:\users /s
copy a file every hour (a.m.) only on weekdays
# System commands need the command interpreter specified: 0 0-12 * * 1-5 c:\...\cmd.exe /c "copy c:\... e:\"