Я хочу сделать следующее: когда файл изменяется, тогда старый файл должен быть скопирован в другое место с другим именем в Linux. Например, при изменении example.text при каждом изменении должны создаваться новые файлы, например: example1.text, example2.text ...

2 ответа2

1

Есть три хороших способа сделать это:

  1. Если вы используете текстовый редактор с графическим интерфейсом, например, gedit/pluma, и включите опцию Create a backup copy of files before saving в настройках, то ваш файл example1.txt будет сохранен в example1.txt~ после сохранения. Вы можете включить это для nano с помощью nano -B example1.txt . Дополнительно cp cp -b example1.txt example2.txt также создаст example1.txt~ .

  2. Используйте задание cron для регулярного резервного копирования файлов в каталоге, вы даже можете комбинировать это с VCS . Я могу включить сценарий, который я использую, если вы спросите хорошо.

  3. Используйте VCS напрямую, например, git, и зафиксируйте ваши файлы в локальном хранилище (вы можете даже перенести его в удаленное местоположение позже, если захотите) в любое время, когда вы их изменяете.

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

0

Предполагая, что использование ZFS является опцией (доступной либо через FUSE, либо непосредственно в Linux), одним из способов будет использование автоматических снимков ZFS для достижения чего-то близкого к тому, что вы хотите.

Старые снимки уничтожаются, поэтому вам потребуется некоторая настройка, если вы действительно хотите обновлять каждый файл.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .