Подтвердить что ты не робот

Vim не может сохранить файл (E212)

Иногда, когда я создаю файл с помощью vim some/path/newfile, vim позволяет мне редактировать его, только чтобы жаловаться, когда я пытаюсь сохранить свои изменения.

E212 Can't open file for writing.

Это происходит, только если новый файл находится в системном каталоге.

:w! не отменяет эту ошибку.

Как я могу написать текущий буфер, не сохраняя его во временное местоположение, выйдите, а затем переименуйте его с помощью sudo?

4b9b3361

Ответ 1

Это потребует пароль root, а затем сохранит ваши изменения по вашему запросу:

:w !sudo tee %

Затем введите (L) oad в приглашении, чтобы повторно загрузить файл после его сохранения.

Ответ 2

Добавьте эту строку в свой .vimrc:

cmap w!! %!sudo tee > /dev/null

а затем вы можете сделать

:w!!

когда вы войдете в эту позицию, и он напишет файл, используя sudo. Очень удобно.

Ответ 3

Сначала вы можете mkdir, а затем сохраните его.

Ответ 5

Если это так в Windows 7 или более поздних версиях, запустите редактор VI как Администратор. Щелкните правой кнопкой мыши приложение и выберите "Запуск от имени администратора". Эта проблема будет решена. Кроме того, ошибка связана с административными привилегиями.

Ответ 6

vim some/path/newfile

вы можете попытаться сделать это в два шага, сначала создайте папку 'some' и 'path' с помощью mkdir ~, затем перейдите в папку 'path', используйте команду: sudo vim newfile.then сохраните ее

Ответ 7

Для чего бы это ни стоило, вы также можете убедиться, что у вас достаточно места в разделе, где вы пытаетесь сохранить файл. Мне пришлось освободить место на моем/домашнем диске, и это решило проблему.