Scheduling with System Tasks and Other Events
The cron utility runs continuously in the background, taking care of scheduled system tasks and user requests at the appropriate time.
You might not know it,
but your Mac does quite a bit on its own behind your back — or
under your fingertips, I should say. Your system regularly purges
itself of outdated, space-hogging log files, updates system databases
so utilities like locate
(type
man
locate
on the command line
for details) can work effectively, and performs several other
maintenance tasks that keep your system running lean and mean.
It does so by means of a task-scheduling utility called
cron
(as in chronological). The
cron
command launches automatically at system
startup and runs continuously in the background. It keeps a list of
what needs to happen when and consults this list each and every
minute of each and every day, at least while your machine is awake.
When it notices it’s time to perform some duty, it
does so quietly in the background.
The lists are
kept in
crontab
files associating a particular action
with a timetable. Each user account can have its own
crontab
file. The system itself has a special
crontab
, found in the
/etc
directory; it belongs to the
superuser, or root, account and takes care of actions requiring the
kind of system access allowed only to root [Hack #50].
The crontab File
The format of a crontab
file might appear rather esoteric at first, but it’s
really rather simple. For example, Figure 5-20 ...
Get Mac OS X Hacks now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.