David Steinsland – informatikkstudent og webutvikler

Dagens tips: Cronjobber på Windows med Wget

I mange ulike sammenhenger kan det være nyttig med Cron jobs på Linux, som skal gjøre en bestemt oppgave til et bestemt tidspunkt. Som webutvikler bruker jeg dette verktøyet jevnt og trutt, for eksempel dersom jeg ønsker å kjøre en PHP-fil hver midnatt. Men hva med Windows?

På Windows har vi noe som heter «Planlagte oppgaver» (eng: Scheduled Tasks) som er så og si ekvivalent med Cron, men det er ikke så veldig utbredt å bruke. I hvertfall brukte jeg endel tid på å finne ut at dette var et brukbart verktøy!

Wget er også et Linuxprogram, og brukes til å besøke en nettjener (webserver) og hente informasjon derfra.  Heldigvis er dette gjort tilgjengelig for Windows, og er nesten identisk med Linuxversjonen.

  1. Last ned siste versjon av Wget
  2. Kopier innholdet i zip-filen til for eksempel C:\wget\

Nå som wget er på plass, trenger vi bare kjøre en kommando i kommandolinjen til Windows (Start -> Kjør -> cmd.exe). Denne starter den planlagte oppgaven vår, hvor vi setter de ulike parameterene for oppgaven.

I CMD limer du inn følgende:

schtasks /create /tn "Windows Cronjob" /tr "c:\utils\wget\wget.exe -O - -q -t 1 http://example.com/cron.php" /sc hourly

Her oppretter vi oppgaven «Windows Cronjob» som skal kjøre programmet Wget (plassert C:\utils\wget\ hos meg) med argumentene: «-O – -q -t 1 http://example.com/cron.php». Det betyr simpelthen at den skal besøke cron.php som ligger på domenet example.com. Oppgaven skal også utføres hver time.

Det var dét! Så enkelt kan det faktisk gjøres; og det fungerer fint. Kjekt «triks» å kunne dersom du utvikler på en Windowsmaskin.

Relaterte innlegg:

  1. Uavhengige cronjobber i PHP
  2. Daglig backup av MySQL med PHP (Windows)