題 將crontab的默認文本編輯器更改為vim


我正在使用ubuntu 9.10,默認文本編輯器是nano,我討厭。 (不是每個人?)

通常這不是問題,因為我只是vi或gedit一切,但 crontab -e 用納米打開。我嘗試將其更改為vim使用 sudo update-alternatives --config editor 並選擇選項3(“/usr/bin/vim.basic”)。對於sudo和非sudo來說,這已經改變了它。但 crontab -e 仍然打開納米。有任何想法嗎?最大


88
2018-05-10 16:13


起源




答案:


crontab -e 命令將檢查環境變量 $EDITOR 和 $VISUAL 對於默認文本編輯器的覆蓋,所以......

export VISUAL=vim

要么

export EDITOR=vim

應該做的伎倆。


112
2018-05-10 16:18



請記住,如果您正在編輯其他用戶的crontab,請使用 sudo -E crontab -e 哪裡 sudo -E 指定使用你的env變種。 - MarkHu


在ubuntu中,嘗試運行: select-editor,以交互方式創建 ~/.selected_editor

# Generated by /usr/bin/select-editor
SELECTED_EDITOR="/usr/bin/vim.basic"

83
2018-05-10 16:16



以上答案沒有用......這樣做。 - mlissner
這是黃金!謝謝。 - saintali
是的,這改變了/ usr / bin / sensible-editor使用的〜/ .sensible_editor。似乎在沒有指定編輯器的環境變量的情況下,crontab運行敏感編輯器而不是編輯器,因為前者允許每用戶配置。 - eel ghEEz
@MaxWilliams,運行select-editor不會顯示先前做出的選擇,它存儲在〜/ .sensible_editor中。 - eel ghEEz
@eelghEEz - 你的意思是 ~/.selected_editor?這就是我的系統上的內容以及我在別處看到的內容。 - Wilson F


man crontab

-e選項用於使用編輯器編輯當前的crontab
由VISUAL或EDITOR環境變量指定。在你之後
退出編輯器,修改後的crontab將自動安裝
凱莉。如果沒有定義任何環境變量,那麼
使用默認編輯器/ usr / bin / editor。

加入你的 ~/.bashrc

export EDITOR=vim

10
2018-05-10 16:17





如果你討厭 nano 你可以卸載它:

sudo apt-get remove nano

crontab 應該只是默認為下一個 EDITOR (對我來說是 vim.basic)。


9
2018-05-01 01:23



我們使用超級用戶帳戶運行我們的cron作業,但登錄到開發帳戶。所以從開發帳戶我需要做 sudo crontab -e。我設置 export EDITOR=vim 在超級用戶和開發帳戶的.bashrc中,但是 sudo crontab -e 納米仍在開放。卸載nano後,它會打開vim。謝謝! - arun
這是唯一對我有用的解決方案。在此之前嘗試了4-5件事:) - Charlie Wynn
這是迄今為止最好的解決方案,如果OP意味著你永遠不需要納米。不知道為什麼之前我沒有發生過 - 可能是我沒有意識到crontab會默認為下一個可用的編輯器!真棒 - Luke


更好的選擇是設置編輯器的替代品(而不僅僅是一個用戶):

sudo update-alternatives --install /usr/bin/editor editor /usr/bin/vim 100

4
2017-12-14 18:09



為什麼更改其他用戶的設置更好,誰沒有要求更改? - ceving


export EDITOR=vi && crontab -e 

適用於debian擠壓


3
2017-10-01 21:04



一點點解釋會有很長的路要走。 - ChrisF
這將設置EDITOR環境變量,然後編輯crontab文件, EDITOR=vim crontab -e 也會工作,但只有一次。 - 0x4a6f4672


不幸的是我無法發表評論或投票。

在Ubuntu上調用配置文件 ~/.selected_editor

使用以下命令可以選擇 默認編輯器 再次:

$ select-editor

刪除主目錄中的文件也有效。

$ rm ~/.selected_editor

僅設置變量 $VISUAL 要么 $EDITOR 將工作,但只有在將其寫入在您的環境中執行的腳本時才是持久的。

添加到您的rc文件

$ echo "export VISUAL=/usr/bin/vi" >> ~/.bashrc

但我不建議使用最後的解決方案。


2
2018-01-05 11:35



如果你不推薦它為什麼提供它? - Ramhound
只是為了完成,因為其他人可能更喜歡這種方式。 - André


你應該最好刪除 ~/.sensible_editor 文件,然後運行 crontab -e 將提示您選擇首選編輯器。
 從那時起,你的偏好將被記住 ~/.sensible_editor 文件。


0
2017-10-11 07:35



不知道為什麼這被拒絕投票它正是我需要和完美的工作。 - rob
Ubuntu似乎不知道 emacsclient。 - ceving