У меня есть запрос о том, как изменить изменения в файле - то есть, если я отредактировал файл с помощью vi, добавил в него несколько строк и сохранил его, но теперь я хочу вернуть свой исходный файл без его повторного редактирования. .
Если вы не вышли из vim после записи изменений, вы можете выполнить приведенную ниже команду vim, чтобы отменить все изменения, сделанные с момента открытия файла.
: u1 | u
Приведенная выше команда сначала запускает команду: undo 1, затем: undo. Первая команда переходит к после первого изменения, вторая отменяет первое изменение
Vi, которую вы вероятно, используется Vim (поскольку вы работаете в системе Linux).
Vim имеет параметр резервного копирования
, который создает резервную копию существующего файла на диске перед сохранением текущего буфера. Резервная копия будет иметь то же имя, что и исходный файл, но с добавлением ~
в конце имени файла.
Чтобы включить эту функцию, добавьте
set backup
в файл ~ / .vimrc
.
Чтобы изменить расширение резервного копирования, установите для backupext
требуемый суффикс:
set backup
set backupext=.bak
Вы также можете изменить , где хранятся резервные копии, установив для backupdir
значение имя каталога. Значение по умолчанию для backupdir
- ., ~ / Tmp, ~ /
. Это означает, что Vim сначала пытается сохранить резервную копию в текущем каталоге (.
), но если это не удается (по какой-либо причине), он пытается снова с помощью ~ / tmp
, а затем снова с ~ /
.
См. Также : справка по резервному копированию
из Vim.
Vi не имеет этой функции.