Mengubah editor crontab default

140

Saya mencoba mengubah editor default dari nanomenjadi vim.

Saya telah menjalankan perintah berikut:

sudo update-alternatives --config editor

dan

update-alternatives --config editor

Keduanya sekarang menghasilkan:

  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

Saya telah memulai kembali sesi ssh saya dan memulai kembali sshd tetapi crontab -e masih terbuka di nano

Apa lagi yang harus saya lakukan?

austinbv
sumber
1
Saya kira jawaban-jawaban ini tidak benar-benar menjawab pertanyaan, bukan?
geotheory
Berikut ini jawaban yang lebih luas: askubuntu.com/questions/977538/…
SDsolar

Jawaban:

121

Coba sesi ssh Anda diikuti oleh

export EDITOR=vim

atau mungkin

export EDITOR=/usr/bin/vim.basic

Format pengaturan variabel EDITOR tergantung pada shell yang Anda gunakan.

Di Ubuntu Anda dapat mengatur variabel lingkungan EDITOR pada logon dengan menambahkan di atas ke ~/.profile

Sesi SSH Anda akan membaca file yang serupa (jika ada) pada host jarak jauh yang disebut ~/.ssh/environment. Ini harus ditentukan secara khusus oleh ssh daemon config. Lihat man sshd_configdan cari PermitUserEnvironmentdetail lebih lanjut.

kebebasan fosil
sumber
1
Ini bekerja di CentOS juga
machineaddict
Apa alasan Anda tidak ingin menggunakan .bashrc di sini? tampaknya bekerja untuk saya, atau. profil lebih baik?
Nate
3
Jawaban pilih-editor di bawah ini adalah jawaban yang lebih baik
mcarans
217

Cukup jalankan select-editor, ini akan memungkinkan Anda memilih editor yang Anda inginkan.

Mostafa Shahverdy
sumber
9
Jawaban yang lebih baik menurut saya daripada apa yang dipilih. Tidak perlu mengubah profil bash saya untuk mengatur editor. Diverifikasi dengan keluar dan masuk kembali.
Paul Carlton
4
Seharusnya jawaban yang diterima. Terima kasih Mostafa!
DylanYoung
3
Jelas seharusnya jawaban yang diterima! Ini sangat membantu! : D
Fadi
3
Ini adalah satu-satunya jawaban yang berhasil bagi saya
cjohansson
3
Jawaban Terbaik. ...
Kami adalah Borg
26

Preferensi pribadi saya ...

cd /bin
mv nano nano_must_die
ln -s /usr/bin/vim nano
Dave
sumber
Saya menyukainya, bekerja dengan cukup baik bagi saya setelah pembaruan-alternatif tidak berhasil.
Cole Busby
5
Saya tidak akan tahu apa yang salah dengan nano untuk admin yang tidak melihat nilai dalam mempelajari perintah vi hanya untuk mengubah beberapa file konfigurasi.
Maks.
1
Saya kira melakukan apa pun yang Anda suka di komputer pribadi Anda. Tetapi pada mesin yang dibagikan dengan orang lain, saran ini pada dasarnya menonaktifkan nano untuk semua pengguna dengan cara ketika pengguna secara khusus meminta nano, mereka malah mendapatkan vim. Apa gunanya itu? Jika mereka menginginkan vim, mereka akan memintanya. Jika masalahnya di sini adalah bahwa sistem dikonfigurasikan untuk secara otomatis memanggil nano dalam keadaan tertentu di mana Anda secara pribadi lebih suka vim, maka ubah konfigurasi.
gwideman
13

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

Mungkin Anda memiliki variabel lingkungan EDITOR diatur ke nano?

aureianimus
sumber
13

Jika Anda hanya ingin memilih editor sementara, Anda dapat melakukan hal berikut

EDITOR=nano crontab -e

Ini mengatur EDITORvariabel lingkungan untuk perintah

Luke Madhanga
sumber
11

Di komputer Ubuntu 12.04 saya, crontabmenggunakan ~/.selected_editorfile, yang berisi jalur editor yang dipilih. Edit itu:

nano ~/.selected_editor

Saya telah mengeditnya secara langsung atau digunakan select-editor, yang merupakan skrip untuk melakukan hal yang sama. Edit baris berikut:

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

Orang-orang IHMO tidak boleh mengubah apa pun di / etc atau / bin untuk melakukan ini. Ini adalah hal tingkat pengguna, bukan tugas seluruh sistem.

NormanD
sumber
untuk gedit:SELECTED_EDITOR="/usr/bin/gedit"
xinthose
2

Saya mengalami kesulitan dengan select-editordan update-alternatives, solusi saya adalah dengan mengedit tautan:

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

editor sekarang buka Vim

Dennis Bellinger
sumber
2

Saya punya masalah yang sama - crontab -e bergantung pada pilih-editor, visudo bergantung pada konfigurasi "alternatif"

Solusi saya:

jalankan kedua perintah sebagai 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
julian
sumber
Sebagai root? Penggunaan yang lebih baik sudo(lihat misalnya apa manfaat sudo dari su
Marc Vanhoomissen