Modifica dell'editor crontab predefinito


140

Sto cercando di modificare l'editor predefinito da nanoa vim.

Ho eseguito i seguenti comandi:

sudo update-alternatives --config editor

e

update-alternatives --config editor

Entrambi ora producono:

  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

Ho riavviato la mia sessione ssh e riavviato sshd ma crontab -e si apre ancora in nano

Cos'altro devo fare?


1
Non credo che nessuna di queste risposte affronti effettivamente la domanda, vero?
geotheory,

Ecco una risposta più ampia: askubuntu.com/questions/977538/…
SDsolar

Risposte:


121

Prova la tua sessione ssh seguita da

export EDITOR=vim

o forse

export EDITOR=/usr/bin/vim.basic

Il formato dell'impostazione della variabile EDITOR dipende dalla shell che si sta utilizzando.

In Ubuntu è possibile impostare la variabile di ambiente EDITOR all'accesso aggiungendo quanto sopra a ~/.profile

La sessione SSH leggerà un file simile (se esiste) sull'host remoto chiamato ~/.ssh/environment. Questo deve essere definito in modo specifico dalla configurazione del demone ssh. Guarda man sshd_confige cerca PermitUserEnvironmentper maggiori dettagli.


1
Funziona anche con CentOS
machineaddict,

Qualche motivo per cui non vorresti usare .bashrc qui? sembra funzionare per me o .profile è meglio?
Nate,

3
La seguente risposta per l'editor di selezione è una risposta migliore
mcarans

217

Basta semplicemente eseguire select-editor, questo ti consentirà di scegliere qualsiasi editor desiderato.


9
Risposta migliore Penso di quello che è stato scelto. Non devo cambiare il mio profilo bash per impostare l'editor. Verificato disconnettendosi e riconnettendosi.
Paul Carlton

4
Dovrebbe essere la risposta accettata. Grazie Mostafa!
DylanYoung,

3
Sicuramente avrebbe dovuto essere la risposta accettata! Questo ha aiutato molto! : D
Fadi,

3
Questa è stata l'unica risposta che ha funzionato per me
cjohansson,

3
Migliore risposta. ...
Siamo Borg il

26

Le mie preferenze personali ...

cd /bin
mv nano nano_must_die
ln -s /usr/bin/vim nano

Lo adoro, ha funzionato abbastanza bene per me dopo che l'aggiornamento-alternative non ha funzionato.
Cole Busby,

5
Non saprei cosa c'è che non va in nano per gli amministratori che non vedono valore nell'apprendimento dei comandi vi solo per modificare alcuni file di configurazione.
Max

1
Immagino che faccia quello che vuoi sulla tua macchina personale. Ma su un computer condiviso con chiunque altro, questo suggerimento disabilita essenzialmente nano per tutti gli utenti in modo che quando un utente richiede specificamente nano, ottengono invece vim. Che senso ha questo? Se avessero voluto VIM, lo avrebbero chiesto. Se il problema qui è che il sistema è configurato per invocare automaticamente nano in alcune circostanze in cui si preferisce vim personalmente, quindi modificare la configurazione.
Gwideman,

13

Da "man 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.

Forse hai la variabile di ambiente EDITOR impostata su nano?


13

Se vuoi solo selezionare l'editor temporaneamente, puoi fare quanto segue

EDITOR=nano crontab -e

Questo imposta la EDITORvariabile d'ambiente per il comando


11

Sul mio computer Ubuntu 12.04, crontabutilizza il ~/.selected_editorfile, che contiene il percorso dell'editor selezionato. Modificalo:

nano ~/.selected_editor

L'ho modificato direttamente o usato select-editor, che è uno script per fare la stessa cosa. Modifica la seguente riga:

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

Le persone IHMO non dovrebbero cambiare nulla in / etc o / bin per farlo. È una cosa a livello di utente, non un'attività a livello di sistema.


per gedit:SELECTED_EDITOR="/usr/bin/gedit"
xinthose,

2

Avevo difficoltà con select-editore update-alternatives, la mia soluzione era semplicemente modificare il link:

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

editor ora apre Vim


2

Ho avuto lo stesso problema - crontab -e si basa su select-editor, visudo si basa sulla configurazione di "alternative"

La mia soluzione:

eseguire entrambi i comandi come 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

Come radice? Uso migliore sudo(vedi ad esempio quali sono i vantaggi di sudo rispetto a su
Marc Vanhoomissen,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.