User-friendly wrapper or replacement for `at` command under OS X

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

  1. At startup and when saving
  2. Always
  3. Mounting a volume
  4. 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:

  1. 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.
  2. 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 perhaps atrun with a longer cycle would work.

What is the preferred way to schedule commands to run only once at some time in the future?

kuzzooroo

Posted 2014-04-06T20:11:54.763

Reputation: 255

Answers

0

Script Timer seems to be one option. The author writes, "Yes, you can schedule a job to run only once in Script Timer. It is treated as a special case for a repeating job - you just set the repeating time interval to zero."

kuzzooroo

Posted 2014-04-06T20:11:54.763

Reputation: 255

0

You can schedule scripts/commands from iCal by creating an event and setting an alarm to "Run Script".

Optionally, if you want to execute some commands regularly - you should really look into using Cronjobs. Cronjobs let you specify command which will be executed at specific time(s).

There are various GUI frontends for managing cronjob on Mac:

phoops

Posted 2014-04-06T20:11:54.763

Reputation: 2 977

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