Changer l'éditeur de crontab par défaut

140

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

J'ai lancé les commandes suivantes:

sudo update-alternatives --config editor

et

update-alternatives --config editor

Les deux sorties 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 sshd mais crontab -e s'ouvre toujours dans nano

Que dois-je faire d'autre?

austinbv
la source
1
Je ne pense pas que ces réponses répondent réellement à la question.
geotheory
Voici une réponse plus complète: askubuntu.com/questions/977538/…
SDsolar

Réponses:

122

Essayez votre session ssh suivie de

export EDITOR=vim

ou éventuellement

export EDITOR=/usr/bin/vim.basic

Le format de réglage de la variable EDITOR dépend du shell que vous utilisez.

Dans Ubuntu, vous pouvez définir la variable d’environnement EDITOR lors de la connexion en ajoutant ce qui précède à la liste. ~/.profile

Votre session SSH lira un fichier similaire (s’il existe) sur l’hôte distant appelé ~/.ssh/environment. Ceci doit être spécifiquement défini par la configuration du démon ssh. Voir man sshd_configet chercher PermitUserEnvironmentpour plus de détails.

fossfreedom
la source
1
Cela fonctionne aussi dans CentOS
machineaddict
Une raison pour laquelle vous ne voudriez pas utiliser .bashrc ici? semble fonctionner pour moi, ou .profile est-il meilleur?
Nate
3
La réponse choisie par l'éditeur ci-dessous est une meilleure réponse
mcarans
217

Il suffit de lancer select-editor, cela vous permettra de choisir l'éditeur que vous voulez.

Mostafa Shahverdy
la source
9
Je pense qu'il vaut mieux répondre que ce qui a été choisi. Je n'ai pas besoin de changer mon profil bash pour paramétrer l'éditeur. Vérifié en vous déconnectant et en vous reconnectant.
Paul Carlton
4
Devrait être la réponse acceptée. Merci Mostafa!
DylanYoung
3
Aurait certainement dû être la réponse acceptée! Cela a beaucoup aidé! : D
Fadi le
3
C’est la seule réponse qui a fonctionné pour moi
cjohansson le
3
Meilleure réponse. ...
Nous sommes Borg le
26

Ma préférence personnelle ...

cd /bin
mv nano nano_must_die
ln -s /usr/bin/vim nano
Dave
la source
Je l'aime, assez bien travaillé pour moi après mise à jour-alternatives ne fonctionnait pas.
Cole Busby
5
Je ne saurais pas ce qui ne va pas avec nano pour les administrateurs qui ne voient pas l'intérêt d'apprendre des commandes vi simplement pour peaufiner certains fichiers de configuration.
Max
1
Je suppose que faites ce que vous voulez sur votre propre machine personnelle. Mais sur une machine partagée avec qui que ce soit d'autre, cette suggestion désactive essentiellement nano pour tous les utilisateurs de manière à ce que lorsqu'un utilisateur demande spécifiquement nano, il obtienne à la place vim. Quel est le but de cela? S'ils voulaient vim, ils le demanderaient. Si le problème ici est que le système est configuré pour appeler automatiquement nano dans certaines circonstances où vous préférez personnellement vim, modifiez la configuration.
Gwideman
13

De "homme crontab":

   The -e option is used to edit the  current  crontab  using  the  editor
   specified  by  the  VISUAL  or EDITOR environment variables.  After you
   exit from the editor, the modified crontab will be installed  automati‐
   cally.  If  neither  of  the environment variables is defined, then the
   default editor /usr/bin/editor is used.

Peut-être avez-vous la variable enivronment EDITOR définie sur nano?

aureianimus
la source
13

Si vous voulez seulement choisir l'éditeur temporairement, vous pouvez faire ce qui suit

EDITOR=nano crontab -e

Ceci définit la EDITORvariable d'environnement pour la commande

Luke Madhanga
la source
11

Sur mon ordinateur Ubuntu 12.04, crontabutilise le ~/.selected_editorfichier, qui contient le chemin de l’éditeur sélectionné. Éditer:

nano ~/.selected_editor

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

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

Les personnes IHMO ne devraient rien changer dans / etc ou / bin pour ce faire. C'est un problème de niveau utilisateur, pas une tâche à l'échelle du système.

NormanD
la source
pour gedit:SELECTED_EDITOR="/usr/bin/gedit"
xinthose
2

J'avais des difficultés avec select-editoret update-alternatives, ma solution était simplement de modifier le lien:

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

editor ouvre maintenant Vim

Dennis Bellinger
la source
2

J'ai eu le même problème - crontab -e s'appuie sur select-editor, visudo s'appuie sur la configuration des "alternatives"

Ma solution:

lance 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
julien
la source
En tant que root? Meilleure utilisation sudo(voir, par exemple, quels sont les avantages de sudo sur su
Marc Vanhoomissen