Come posso modificare l'editor predefinito del comando sudoedit per essere vim?


23

Sto cercando di utilizzare sudoedit, ma continua a eseguire l' nanoeditor. Il mio editor preferito è vim. Come posso renderlo predefinito?

Guardando la pagina man man sudoedit, ho notato quanto segue:

 EDITOR           Default editor to use in -e (sudoedit) mode if neither SUDO_EDITOR nor VISUAL is set.
 SUDO_EDITOR      Default editor to use in -e (sudoedit) mode.
 VISUAL           Default editor to use in -e (sudoedit) mode if SUDO_EDITOR is not set.

Quindi le ho impostate tutte su /usr/bin/vim, ma le sudoedit /etc/hostsutilizza ancora nano. Mi sto perdendo qualcosa?

$ EDITOR=/usr/bin/vim
$ VISUAL=/usr/bin/vim
$ SUDO_EDITOR=/usr/bin/vim

$ echo $VISUAL
/usr/bin/vim

$ echo $EDITOR 
/usr/bin/vim

$ echo $SUDO_EDITOR 
/usr/bin/vim

$ sudoedit /etc/hosts # This is still using nano

Che dire sudo vim?
Cornelius,

@Cornelius Funziona, questa è la mia soluzione alternativa per il problema al momento.
Dan,

1
prova invece sudo visudo
animaletdesequia,

@darent visudo: /etc/sudoers: Permission denied. Cos'è quello?
Cornelius,

2
@darent visudoè un programma diverso. È lì solo per permetterti di farlo edit the sudoers file. man visudo
Dan,

Risposte:


27

Corri sudo update-alternatives --config editore scegli per vim. Dopo questo, sudoedit /etc/hostsdovrebbe aprire /etc/hostsusando vim.

In alternativa puoi usare sudo vim /etc/hosts.


12

Prova a esportare la variabile, ad esempio:

$ SUDO_EDITOR=/usr/bin/vim
$ export SUDO_EDITOR

Una nuova shell viene avviata quando si esegue il comando e se questa variabile non viene esportata non esisterà nella nuova shell.


Poiché la domanda è più correlata all'esportazione rispetto all'impostazione di una variabile d'ambiente e il modo alternativo di fare sudo vim /etc/hostsnon è rilevante qui, questa dovrebbe essere la risposta accettata.
BcK,
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.