Могу ли я получить разрешение root без выхода из vim?

Иногда, когда я редактирую файл, который требует прав на root (например, файлы под /etc ), но я забыл запустить vim как sudo.

После завершения редактирования и введите :wq, чтобы сохранить и оставить, я нахожу, что не могу, даже используя !wq, потому что файл только для чтения.

Если я уйду и перередактирую файл, вся моя работа будет потеряна, но если нет, я не могу сохранить свое редактирование. Итак, как я могу получить разрешение root для записи, не выходя из vim?

Ответы

Ответ 1

Для принудительного сохранения используйте следующую команду

:w !sudo tee %

Он предложит вам ввести пароль.

Ответ 2

Указанный трюк с tee хорош; если вам это нужно, я рекомендую плагин SudoEdit, который предлагает команду :SudoWrite (и даже обработчик протокола sudo:).