Crontab dosyasını açmak için bir düzenleyici nasıl belirtilir? "Export EDITOR = vi" çalışmıyor


103

Red Hat Enterprise Linux 5 kullanıyorum ve vim düzenleyiciyi crontab dosyasını düzenlemek için ayarlamak istiyorum.

Koşarsam echo $EDITOR, vim i olsun. Ama crontab -ekoştuğumda farklı bir editör oluyorum.

Yanıtlar:


170

VISUALOrtam değişkeninizin başka bir şeye ayarlanmış olması çok muhtemeldir . Deneyin:

export VISUAL=vi

6
ayar değişkeni export VISUAL=vim( setenv VISUAL "vim"tcsh kabuğu için) BÜYÜK ÇALIŞIYOR !!
antonjs

9
@ lwpro2: VISUALAyarlanmazsa EDITORdeğişken kullanılır. Ama VISUALönceliğe sahip EDITOR.
bmk

Crontab, bir kullanıcıyla birkaç kişi tarafından yönetiliyorsa, bunu bir alt kabukta yapmanızı öneririm, böylece varsayılan düzenleyici yerinde kalır.
Thomas Böhm

Dosyanın nano yerine vi ile açıldığında neden farklı olduğuna dair bir fikriniz var mı?
dardub

76

Adamdan alıntı yapmak için:

-E seçeneği, VISUAL veya EDITOR ortam değişkenleri tarafından belirtilen düzenleyiciyi kullanarak mevcut crontab'ı düzenlemek için kullanılır.

Çoğu zaman crontab -e, X'ten koşarsanız, VISUALayarladınız; kullanılan budur. Bunu dene:

VISUAL=vi crontab -e

Sadece benim için çalıştı :)


Açıklama için teşekkürler, Indeed terminalimi X'ten çalıştırıyorum.
antonjs

1
sudo VISUAL=vi crontab -e
Sudo

42

Yukarıdaki yöntemler işe yaramazsa (Ubuntu 13.04 kurulumumda çalışmadıkları için) şunu deneyin:

Birkaç alternatif yol vardır:

1) Seçme düzenleyiciyi çalıştırın

select-editor

2) Dosyayı manuel olarak düzenleyin: ~/.selected_editortercih ettiğiniz düzenleyiciyi belirtin. Bu seçenek ile editör parametrelerini belirleyebilirsiniz.

# Generated by /usr/bin/select-editor
SELECTED_EDITOR="/usr/bin/emacs -nw"

3) Şunlarla komut satırında anında belirtebilirsiniz:

env VISUAL="emacs -nw" crontab -e

1
nanoCrontab'ı ilk kez açarken yanlışlıkla varsayılan düzenleyiciyi ayarlıyordum . Sonra onu çalıştırmak için kullanmak sudo select-editorzorunda kaldım. Yalnızca select-editorişe yaramazsa bir ipucu
244an

2
Kişisel konfigürasyonunuz için "sudo" kullanmamalısınız. Normal bilgisayar kullanımı için sizi yüksek işlemde kalmaya zorlayan şeyleri bozabilir. Sudo (yükseltilmiş komut), kişisel alanınız (~ kullanıcı alanı) dışındaki sistem genelindeki özelliklerle çalışmak içindir.
LD James

5

Bence tam yolu kullanmanız gerekebilir:

export EDITOR=/usr/bin/vim

3
Tuzak VISUALilk önce kontrol edilir. Dolayısıyla, sizinki gibi mükemmel bir tavsiye, bir SSH oturumu için işe yarar ve bir masaüstü kutusunda gizemli bir şekilde başarısız olur.
9000

Atama sırasında açıklandığı gibi dışa aktarmayı denedim, ancak işe yaramadı. Önce atayıp sonra dışa aktararak benim için çalıştı, şu şekilde: EDITOR = / usr / bin / vi; EDITOR ihracat. SSH altında SunOS kullanmak burada.
Alan

5

VIM düzenleyicide açmak için aşağıdaki komutu kullanabilirsiniz.

export VISUAL=vim; crontab -e

Not: Lütfen VIM editörünün sunucunuzda kurulu olduğundan emin olun.



2

Benim için çalışmıyordu. Crontab'ı sudo ile çalıştırıyorum, bu yüzden root'a geçtim, yukarıdaki önerileri yaptım ve crontab vim'de açılacaktı, ancak yine de kullanıcı hesabımdan olmadı. Sonunda sudo select-editorkullanıcı hesabından kaçtım ve bu hile yaptı.


1
Kullanıcı ortamınızı yapılandırmak için sudo çalıştırmanız gerekiyorsa, bu, ele almanız gereken sorunları belirtir. Kişisel alanınızda sudo çalıştırdınız ve size ait olması gereken dosyalar için izninizi kaybettiniz. Sen çalıştırarak alanını kontrol edebilirsiniz: find ~/ -mount ! -user $(whoami). Sen çalıştırarak sorunu düzeltebilirsiniz: sudo chown -R $(whoami):$(whoami) ~/.
LD James

@LDJames Haklıydınız, teşekkür ederim. Görünüşe göre, sadece root'a ait olan .select_editor dosyasıydı.
felwithe

2

Bu benim için çalıştı:

EDITOR="/usr/bin/vim"
export EDITOR

Bunu geçerli kullanıcı için etkinleştirmek üzere ~ / .bash_profile veya ~ / .bashrc'ye ekleyin.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.