Setting up a cron job in Windows

WindowsCronScheduled Tasks

Windows Problem Overview


I have to download a file from an SFTP server everyday. I have the program which retrieves the file from the server but I was thinking of setting up a cron job (or anything similar) to automate that. We are a Windows shop and need to set up the cron job in Windows.

Windows Solutions


Solution 1 - Windows

The windows equivalent to a cron job is a scheduled task.

A scheduled task can be created as described by Alex and Rudu, but it can also be done command line with schtasks (if you for instance need to script it or add it to version control).

An example:

schtasks /create /tn calculate /tr calc /sc weekly /d MON /st 06:05 /ru "System"

Creates the task calculate, which starts the calculator(calc) every monday at 6:05 (should you ever need that.)

All available commands can be found here: http://technet.microsoft.com/en-us/library/cc772785%28WS.10%29.aspx

It works on windows server 2008 as well as windows server 2003.

Solution 2 - Windows

  1. Make sure you logged on as an administrator or you have the same access as an administrator.
  2. Start->Control Panel->System and Security->Administrative Tools->Task Scheduler
  3. Action->Create Basic Task->Type a name and Click Next
  4. Follow through the wizard.

Solution 3 - Windows

http://windows.microsoft.com/en-US/windows7/schedule-a-task

maybe that will help with windows scheduled tasks ...

Solution 4 - Windows

There's pycron which I really as a Cron implementation for windows, but there's also the built in scheduler which should work just fine for what you need (Control Panel -> Scheduled Tasks -> Add Scheduled Task).

Solution 5 - Windows

If you don't want to use Scheduled Tasks you can use the Windows Subsystem for Linux which will allow you to use cron jobs like on Linux.

To make sure cron is actually running you can type service cron status from within the Linux terminal. If it isn't currently running then type service cron start and you should be good to go.

Solution 6 - Windows

I would like to thank @Vincent Stevenson, @s-hunter

Go to Control Panel --> Administrative Tools --> Task Scheduler--> Create Task

  1. Task Scheduler, Create Task

  2. Give the Task a title

  3. Go to Actions

  4. Go to CMD to find the path,

    Python, import sys, sys.executable

    (this tells you what the Program/script field should be populated with: "some path with Appdata mostly")

    like:C:\Users\admin\AppData\Local\Programs\Python\Python38-32\python.exe

  5. Arguments: name of the python script (like run.py)

  6. Start in: dir location of python script (like:C:\Users\admin\Documents\my_python_project)

  7. Go to Triggers, schedule as you like

  8. Test the script by running it

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
QuestionmonaView Question on Stackoverflow
Solution 1 - WindowssteenhulthinView Answer on Stackoverflow
Solution 2 - Windowss-hunterView Answer on Stackoverflow
Solution 3 - WindowsAlexView Answer on Stackoverflow
Solution 4 - WindowsRuduView Answer on Stackoverflow
Solution 5 - WindowsJosh CorreiaView Answer on Stackoverflow
Solution 6 - WindowsTT313View Answer on Stackoverflow