173 votes

Changer l'éditeur de crontab par défaut

J'essaie de changer l'éditeur par défaut de nano a vim .

J'ai exécuté les commandes suivantes :

sudo update-alternatives --config editor

y

update-alternatives --config editor

Les deux sortent maintenant :

  Selection    Path                Priority   Status
------------------------------------------------------------
  0            /bin/nano            40        auto mode
  1            /bin/ed             -100       manual mode
  2            /bin/nano            40        manual mode
* 3            /usr/bin/vim.basic   30        manual mode
  4            /usr/bin/vim.tiny    10        manual mode

J'ai redémarré ma session ssh et redémarré sshd mais crontab -e s'ouvre toujours dans nano.

Que dois-je faire d'autre ?

14voto

NormanD Points 141

Sur mon ordinateur Ubuntu 12.04, crontab utilise le ~/.selected_editor qui contient le chemin de l'éditeur sélectionné. Modifiez-le :

nano ~/.selected_editor

Je l'ai édité directement ou utilisé select-editor qui est un script pour faire la même chose. Modifiez la ligne suivante :

SELECTED_EDITOR="/usr/bin/vim.basic" 

Les personnes de l'IHMO ne devraient pas modifier quoi que ce soit dans /etc ou /bin pour faire cela. C'est une tâche qui relève du niveau de l'utilisateur et non du système.

3voto

J'avais des difficultés avec select-editor y update-alternatives J'ai donc décidé de modifier le lien :

  1. sudo rm /etc/alternatives/editor
  2. sudo ln -s /usr/bin/vim /etc/alternatives/editor

editor ouvre maintenant Vim

3voto

Will P. Points 2111

J'ai eu le même problème - crontab -e repose sur select-editor, visudo repose sur la configuration de "alternatives".

Ma solution :

exécuter les deux commandes en tant que root

# update-alternatives --install /usr/bin/editor editor /usr/bin/sensible-editor 50

# select-editor 

Select an editor.  To change later, run 'select-editor'.
  1. /bin/nano        <---- easiest
  2. /usr/bin/sensible-editor
  3. /usr/bin/vim.basic
  4. /usr/bin/vim.tiny

Choose 1-4 [1]: 3

2voto

Sudhakar Points 1219

Après avoir essayé les réponses ci-dessus, la seule chose qui a fonctionné pour moi (dans Debian strech) a été de supprimer ~/.selected_editor en courant :

rm ~/.selected_editor

Et puis sélectionnez le nouvel éditeur la prochaine fois que vous exécutez crontab -e .

1voto

Nate Houk Points 111

En plus de vérifier que la variable environnementale ÉDITEUR est correctement définie, vous devez également vérifier que la variable VISUEL est également réglé correctement.

VISUAL aura la priorité sur EDITOR

Dans la documentation :

L'option -e est utilisée pour éditer la crontab courante en utilisant l'éditeur spécifié. éditeur spécifié par les variables d'environnement VISUAL ou EDITOR.

Par exemple, si vous définissez

$ export EDITOR=vim
$ export VISUAL=nano

Ensuite, la commande crontab -e s'ouvrira toujours dans nano.

Vous devriez configurer les deux pour être l'éditeur de choix, comme vim pour moi :

$ export EDITOR=vim
$ export VISUAL=vim

Ensuite, la commande crontab -e s'ouvrira dans vim.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X