Невозможно создать файл резервной копии (добавить! Перезаписать) - PullRequest
22 голосов
/ 08 декабря 2011

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

Ответы [ 8 ]

33 голосов
/ 08 декабря 2011

Вы можете, как vi (или, что более вероятно, vim) сказать форсировать запись, выполнив:

:w!

Либо записать файл в другое место:

:w! /path/to/other/location

Чтобы проверить, куда записываются ваши файлы резервных копий (обычно):

:se backup? backupdir? backupext? 

Попробуйте touch файл в этом каталоге и посмотрите, не выдаст ли ваша операционная система ошибку для просветленияВы, почему ваш редактор не может писать там.

8 голосов
/ 05 августа 2015

Была такая же проблема. Это потому, что я установил vimconf от имени пользователя root. Вам необходимо изменить права на файлы в каталоге ~ / .vim и сменить владельца на пользователя.

sudo chmod 0750 ~/.vim
sudo chown user ~/.vim
4 голосов
/ 14 августа 2017

У меня была такая же проблема. Оказывается, это было связано с нехваткой дискового пространства. попробуйте создать файл с помощью Ex) touch test.txt. Если вы получите сообщение «1002», вам нужно очистить место на диске

.
2 голосов
/ 27 августа 2018

Я исправил это с помощью:

sudo chown user ~/.cache/vim/* -R 

, где "user" - это ваше имя пользователя.

2 голосов
/ 07 сентября 2015

Была такая же проблема. Перепробовал все варианты, как указано выше, но это не сработало. Затем, когда я проверил мое дисковое пространство, оно было заполнено. Как только я освободил место, я смог снова записать в файл.
П.С .: Это было в Linux.

2 голосов
/ 08 декабря 2011

изнутри vi, попробуйте:

:w!

:help w! дает следующую информацию:

                                                       *:w!*
:[range]w[rite]! [++opt] {file}
                        Write the specified lines to {file}.  Overwrite an
                        existing file.
0 голосов
/ 26 февраля 2018

Я не знаю, в чем причина, но я переместился на backupdir с . до ~/.vim/backups в моем .vimrc, и он решил ее для меня:

set backupdir=~/.vim/backups

Я бы предположил, что какой-то инструмент использовал папку, в которой я редактировал файл (в моем случае Visual Studio 2013), но я не уверен.

0 голосов
/ 30 августа 2016

Другая возможность заключается в том, что вы размещаете свои резервные копии в централизованном месте (например, / tmp) и редактируете определенный файл как root. Тогда файл резервной копии будет принадлежать пользователю root и недоступен для записи вами как простым смертным позже.

В этом случае приведенное выше предложение коснуться / tmp / atestfile не покажет проблему! У вас будут права на запись, нет проблем, но не в конкретный файл резервной копии, который пытается записать vim.

Удалить файл как root (sudo rm).

Обратите внимание, что причина w! работает потому, что vim пишет файл без записи файла резервной копии (вы настаиваете, чтобы он записывал, несмотря на ошибку).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...