как изменить изменения, сделанные в файле с помощью редактора vi?

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

0
21.08.2018, 01:46
2 ответа

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

: u1 | u

Приведенная выше команда сначала запускает команду: undo 1, затем: undo. Первая команда переходит к после первого изменения, вторая отменяет первое изменение

1
28.01.2020, 02:47

Vi, которую вы вероятно, используется Vim (поскольку вы работаете в системе Linux).

Vim имеет параметр резервного копирования , который создает резервную копию существующего файла на диске перед сохранением текущего буфера. Резервная копия будет иметь то же имя, что и исходный файл, но с добавлением ~ в конце имени файла.

Чтобы включить эту функцию, добавьте

set backup

в файл ~ / .vimrc .

Чтобы изменить расширение резервного копирования, установите для backupext требуемый суффикс:

set backup
set backupext=.bak

Вы также можете изменить , где хранятся резервные копии, установив для backupdir значение имя каталога. Значение по умолчанию для backupdir - ., ~ / Tmp, ~ / . Это означает, что Vim сначала пытается сохранить резервную копию в текущем каталоге (. ), но если это не удается (по какой-либо причине), он пытается снова с помощью ~ / tmp , а затем снова с ~ / .

См. Также : справка по резервному копированию из Vim.

Vi не имеет этой функции.

0
28.01.2020, 02:47

Теги

Похожие вопросы