Я пытаюсь изменить редактора по умолчанию от nano
кому: vim
.
Я выполнил следующие команды:
sudo update-alternatives --config editor
и
update-alternatives --config editor
Оба теперь вывод:
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
Я перезапустил свою ssh сессию и перезапустил sshd, но crontab-e все еще открывается в нано
Что еще я должен сделать?
Попробуйте свою ssh сессию, сопровождаемую
export EDITOR=vim
или возможно
export EDITOR=/usr/bin/vim.basic
Формат установки переменной РЕДАКТОРА зависит, на которой оболочке Вы используете.
В Ubuntu можно установить переменную среды РЕДАКТОРА на входе в систему путем добавления вышеупомянутого к ~/.profile
Ваша сессия SSH считает подобный файл (если она будет существовать) на удаленном названном хосте ~/.ssh/environment
. Это должно быть конкретно определено ssh конфигурацией демона. Посмотрите man sshd_config
и ищите PermitUserEnvironment
для получения дополнительной информации.
После попытки ответов выше, единственная вещь, которая работала на меня (в Debian расширял) состояла в том, чтобы удалить ~/.selected_editor
путем выполнения:
rm ~/.selected_editor
И затем выбирают нового редактора в следующий раз, когда Вы работаете crontab -e
.
От "человека 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.
Возможно, у Вас есть РЕДАКТОР enivronment переменный набор к нано?
Просто выполненный select-editor
, это позволит Вам выбрать любого редактора, которого Вы хотите.
Мое персональное предпочтение...
cd /bin
mv nano nano_must_die
ln -s /usr/bin/vim nano
Я испытывал трудности с select-editor
и update-alternatives
, мое решение состояло в том, чтобы просто отредактировать ссылку:
sudo rm /etc/alternatives/editor
sudo ln -s /usr/bin/vim /etc/alternatives/editor
editor
теперь открывает Vim
На моем компьютере Ubuntu 12.04, crontab
использование ~/.selected_editor
файл, который содержит путь выбранного редактора. Отредактируйте его:
nano ~/.selected_editor
Я отредактировал его непосредственно или использовал select-editor
, который является сценарием, чтобы сделать то же самое. Отредактируйте следующую строку:
SELECTED_EDITOR="/usr/bin/vim.basic"
Люди IHMO ничего не должны изменять в / и т.д. или / мусорном ведре, чтобы сделать это. Это - вещь уровня пользователя, не задача в масштабе всей системы.
Если Вы только хотите выбрать редактора временно, можно сделать следующее
EDITOR=nano crontab -e
Это устанавливает EDITOR
переменная среды для команды
У меня была та же проблема - crontab-e, полагается на избранного редактора, visudo полагается на конфигурацию "альтернатив"
Мое решение:
выполненный обе команды как корень
# 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
Помимо проверки того, что переменная среды EDITOR установлена правильно, вы также должны убедиться, что переменная VISUAL также установлена правильно.
VISUAL переопределит EDITOR
Из документации:
Опция -e используется для редактирования текущего crontab с помощью редактор, заданный переменными среды VISUAL или EDITOR.
Например, если установить
$ export EDITOR=vim
$ export VISUAL=nano
, то команда crontab -e
все равно будет открываться в nano.
Вы должны установить оба редактора по своему выбору, аля vim для меня:
$ export EDITOR=vim
$ export VISUAL=vim
Тогда команда crontab -e
откроется в vim.