Frequently Asked Questions

Help Center Search

What is a Cron Job?

Print this Article
Comment on this Article
Last Updated: August 28, 2008 9:34 AM

Cron is a standard Linux feature that allows you to schedule tasks, called "Cron Jobs," to run unattended at a specified frequency. For example, you can set the frequency of a job to run twice an hour, Mondays at 8:00 a.m., or weekdays at 12:00 p.m. and 6:00 p.m.

There are several ways to schedule commands to run. Typically, you create a shell script to run as a Cron Job. It runs a list of commands while checking for errors and valid return codes. To run a shell script, set its bit set permissions to "executable." Alternatively, compose a binary executable with a number of arguments. For example, "touch" a file:

/bin/touch $HOME/html/cron_test

The first part of this sample command, "/bin/touch" runs the executable. The second part, "$HOME/html/cron_test" is an argument for the "touch" command.

NOTE: In the example above, the "$HOME" variable is set to the default directory of the hosting account. The "html" directory is the document root of the hosting account.

In addition to shell scripts, your hosting environment supports other language scripts. For example, Perl is a commonly used scripting language that can use scripts as Cron Jobs. In most cases, you can perform this task by specifying to use the executable as the first line of the script. For example:

#!/usr/bin/perl

When a script begins with a line, as in the previous example, and the executable permissions are set, you can specify the line as the command to run for a Cron Job.

The PHP (versions 4 and 5) hosting installations do not support the use of the executable line in scripts. To run a PHP script with Cron, you must set the path to the PHP interpreter as the first element of the command, and then enter the full path of the script you want to run.

The full path to the PHP executables are:

  • PHP version 4: /web/cgi-bin/php
  • PHP version 5: /web/cgi-bin/php5