The obvious thing to attack about cron is the crontab syntax; it would
be much more useful to be able to say things like every
09:00
or every 1h
or every friday 13th
18:00
.
The syntax could end up like fetchmail's (although a bit less flexible, hopefully), permitting brackets for grouping:
every 1h as azz exec "bandwidth-stats" mail-output-to azz@us-lot.org as azz { every 1h exec "hourly"; every 1d exec "daily"; }
A queue somequeue
command would allow groups of actions to avoid
running at the same time as each other.
It would also be nice to avoid crontab needing to be suid; just make sched scan
all the files in /etc/sched.d
periodically (perhaps have a
rescan
action like the exec
action in the system
sched file?) and give each user their own sched file owned by them to edit.
mcron implements some of these ideas, using Scheme as the configuration language.