Alterando o editor crontab padrão

140

Estou tentando alterar o editor padrão de nanopara vim.

Eu executei os seguintes comandos:

sudo update-alternatives --config editor

e

update-alternatives --config editor

Ambos agora produzem:

  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

Eu reiniciei minha sessão ssh e reiniciei o sshd, mas o crontab -e ainda abre no nano

O que mais eu preciso fazer?

austinbv
fonte
1
Eu não acho que nenhuma dessas respostas realmente resolva a questão, é?
Geotheory
Aqui está uma resposta mais extensa: askubuntu.com/questions/977538/…
17/17/17

Respostas:

121

Experimente sua sessão ssh seguida de

export EDITOR=vim

ou possivelmente

export EDITOR=/usr/bin/vim.basic

O formato da configuração da variável EDITOR depende de qual shell você está usando.

No Ubuntu, você pode definir a variável de ambiente EDITOR no logon, adicionando o item acima ao ~/.profile

Sua sessão SSH lerá um arquivo semelhante (se existir) no host remoto chamado ~/.ssh/environment. Isso deve ser definido especificamente pela configuração do daemon ssh. Veja man sshd_confige procure PermitUserEnvironmentmais detalhes.

liberdade de expressão
fonte
1
Isso também funciona no CentOS
machineaddict
Alguma razão para você não querer usar o .bashrc aqui? parece funcionar para mim ou .profile é melhor?
Nate
3
A resposta select-editor abaixo é uma resposta melhor
mcarans
217

Simplesmente execute select-editor, isso permitirá que você escolha qualquer editor que desejar.

Mostafa Shahverdy
fonte
9
Acho melhor resposta do que o que foi escolhido. Não é necessário alterar meu perfil do bash para definir o editor. Verificado efetuando logout e logon novamente.
Paul Carlton
4
Deve ser a resposta aceita. Obrigado Mostafa!
DylanYoung
3
Definitivamente deveria ter sido a resposta aceita! Isso ajudou muito! : D
Fadi
3
Esta foi a única resposta que funcionou para mim
cjohansson
3
Melhor resposta. ...
Estamos Borg
26

Minha preferência pessoal ...

cd /bin
mv nano nano_must_die
ln -s /usr/bin/vim nano
Dave
fonte
Eu amo isso, funcionou bem o suficiente para mim depois que as alternativas de atualização não funcionaram.
precisa saber é o seguinte
5
Eu não saberia o que há de errado com o nano para administradores que não vêem valor em aprender comandos vi apenas para ajustar alguns arquivos de configuração.
Max
1
Acho que faça o que quiser na sua máquina pessoal. Mas em uma máquina compartilhada com outras pessoas, essa sugestão desabilita essencialmente o nano para todos os usuários de uma maneira que, quando um usuário solicita especificamente o nano, ele obtém o vim. Qual o sentido disso? Se eles quisessem vim, eles pediriam. Se o problema aqui é que o sistema está configurado para chamar automaticamente o nano em alguma circunstância em que você pessoalmente prefira o vim, altere a configuração.
gwideman 5/09/19
13

De "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.

Talvez você tenha a variável enivronment EDITOR definida como nano?

aureianimus
fonte
13

Se você quiser escolher o editor apenas temporariamente, faça o seguinte

EDITOR=nano crontab -e

Isso define a EDITORvariável de ambiente para o comando

Luke Madhanga
fonte
11

No meu computador Ubuntu 12.04, crontabusa o ~/.selected_editorarquivo, que contém o caminho do editor selecionado. Edite-o:

nano ~/.selected_editor

Eu o editei diretamente ou usei select-editor, que é um script para fazer a mesma coisa. Edite a seguinte linha:

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

O pessoal da IHMO não deve mudar nada em / etc ou / bin para fazer isso. É uma coisa de nível de usuário, não uma tarefa de todo o sistema.

NormanD
fonte
para gedit:SELECTED_EDITOR="/usr/bin/gedit"
xinthose
2

Eu estava com dificuldades select-editore update-alternatives, minha solução foi simplesmente editar o link:

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

editor agora abre o Vim

Dennis Bellinger
fonte
2

Eu tive o mesmo problema - crontab -e depende do select-editor, visudo depende da configuração de "alternativas"

Minha solução:

execute os dois comandos como 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
juliano
fonte
Como raiz? Melhor uso sudo(veja, por exemplo, quais são os benefícios do sudo sobre o su
Marc Vanhoomissen