How create a crontab on mac

cronschedule

I'm trying to create a crontab on mac.

I've tried crontab -e which takes me to what appears to be an empty file opened with vim. I make no changes and simply press esc, :, w, then q to save and exit.

But when I try crontab -l I see:

crontab -l
crontab: no crontab for st

I tried exactly the same thing as root but I get the same outcome

MacBook-Pro:~ root# crontab -u st -e
crontab: no crontab for st - using an empty one
-- I save an exit vim as above --

crontab: no changes made to crontab
MacBook-Pro:~ root# crontab -u st -l
crontab: no crontab for st

I'm struggling to figure out why this isn't working as expected

Best Answer

This will indeed open a new crontab in vim (presuming you don't already have one)

crontab -e

If it creates a new crontab for you, it will start empty, hit the space bar to add something to the crontab before saving and exiting

So TL;DR

  1. crontab -e creates a new crontab if you don't already have one
  2. If it's a new (empty) crontab, press i to 'insert' using vim, then press spacebar a few times so it's not empty
  3. Save and exit vim by pressing these keys (in order): esc, :, w, then q