Server Fault is a question and answer site for system and network administrators. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

When I edit the crontab using crontab -e it opens the crontab in vi. I'd prefer it to use nano. How can I change this?


For some reason the export command returns command not found. And changing the EDITOR env value didn't work for crontab -e.

The following command worked on my system:

setenv VISUAL /usr/local/bin/nano

share|improve this question
up vote 8 down vote accepted

For sh based shells:

export EDITOR=/path/to/nano

For C shell based:

setenv EDITOR /path/to/nano

Remember that unless you save these setting to your login profile script (/home/user/.bash_profile for example), you lose the setting at log out.

If I remember correctly, FreeBSD uses C shell as the default user shell.

share|improve this answer
As a note, csh uses ~/.cshrc for the profile script, so you'd need to put the setenv command in there. – hark Jun 4 '09 at 17:33

Should be

export EDITOR=/usr/bin/nano

adjust for your location of nano (use 'which' to find). You can put that command in your .bashrc or similar profile script to have it in effect all the time.

share|improve this answer

Probably by setting the environment variable EDITOR.


export EDITOR=/path/to/nano
share|improve this answer

There is a symbolic link under /etc/alternatives/editor that can be pointed to /path/to/nano

You can use the update-alternatives utility to do this as well - although I am not too familiar with using it.

(note - I'm speaking from an 'ubuntu' point-of-view. not sure if this is the same for FreeBSD)

share|improve this answer
It's not the same for FreeBSD. – hark Jun 4 '09 at 17:32

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.