Автоматичне видалення резервних файлів


9

Під час редагування файлів foo.bar~ з’являються деякі резервні копії (файли, що закінчуються тильдою ~). Як я можу контролювати їх створення та чи можна запитувати рекурсивне масове видалення всіх файлів із конкретного каталогу та всіх підкаталогів?


Тут справді є 2 питання; "Як я можу контролювати свої твори", схоже, частковий дублікат emacs.stackexchange.com/questions/33/…
shosti

Відповіді:


8

Ви можете створити всі файли резервного копіювання, щоб перейти в каталог

(setq backup-directory-alist `(("." . "~/.emacs.bak")))

і повністю вимкніть його

(setq make-backup-files nil)

хоча ніхто цього не рекомендуватиме.

Створення резервного копіювання лише для деяких проектів непросте: вам доведеться гортати цю змінну в різних гачках.

Нарешті, запит на масове видалення точно рівнозначний:

find . -name '*~' -exec rm {} \;

тож вам може бути краще робити це в оболонці.


може використовувати -delete замість -exec, це набагато швидше, оскільки він не породить новий процес.
Xah Lee

4

diredдозволяє легко видалити всі файли резервної копії в каталозі - з dired, просто введіть, ~щоб позначити файли резервної копії для видалення та xвиконати видалення.


3

З https://www.gnu.org/software/emacs/manual/html_node/emacs/Backup-Names.html#Backup-Names

Ви можете налаштувати змінну резервного копіювання каталогів, щоб вказати, що файли, що відповідають певним шаблонам, повинні бути створені в резервних копіях у конкретних каталогах. Ця змінна стосується як одно-, так і номерних резервних копій. Типовим способом є додавання елемента (".". Dir) для створення всіх резервних копій у каталозі з абсолютною назвою dir; Emacs модифікує імена файлів резервного копіювання, щоб уникнути сутичок між файлами з однаковими іменами, що походять з різних каталогів. Крім того, додавання, (".". ". ~") Буде робити резервні копії у невидимому підкаталозі. ~ Вихідного каталогу файлу. Emacs створює каталог, якщо потрібно, для створення резервної копії.

Якщо ви визначаєте змінну make-backup-file-name-function на відповідну функцію Lisp, це перекриває звичайний спосіб Emacs будувати імена файлів резервного копіювання.

Ви також можете встановити EMACS таким чином, щоб зберігати нумеровані резервні копії та зберігати задану кількість резервних копій, хоча це може бути гірше, ніж лише одна резервна копія для кожного файлу. Див. Https://www.gnu.org/software/emacs/manual/html_node/emacs/Backup-Deletion.html

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.