0
I often want my computer to automatically add something to my to-do list at some point in the future. In some cases I want to add the same thing at regular intervals. In these cases I use OS X's launchd
via Lingon. But I don't have a great solution for commands that I only want to run once. Judging by Lingon X, launchd
is not the answer. When I add a new event, Lingon's options for "When" are
- At startup and when saving
- Always
- Mounting a volume
- Time
and if I select "Time" the options I get are "Every hour," "Every day," etc.
I believe that in principle the at
command is the answer, BUT:
at
runs on the command line; I'd prefer a GUI. Perhaps someone has written a front-end? I can't find run, but "at" is a common word and so is hard to google for.atrun
is disabled by default under Mac OS, apparently because it is power-inefficient: "at is a cronjob, which by default is scheduled to run every minute. It scans its directory for jobs that have expired and runs them. With 1 disk hit per minute, the drive will not sleep much which causes problems, especially on laptops." For my application the job running 30 minutes late is not a problem so perhapsatrun
with a longer cycle would work.
What is the preferred way to schedule commands to run only once at some time in the future?
So you would advise using cronjobs over launchd? In what contexts? On OS X
man crontab
says, "Darwin note: Although cron(8) and crontab(5) are officially supported under Darwin, their functionality has been absorbed into launchd(8), which provides a more flexible way of automatically executing commands." In any case, my question here is how to run jobs on a non-recurring basis; sounds like iCal is a reasonable possibility. Thanks. – kuzzooroo – 2014-04-06T20:30:27.460