2013-10-11 5 views
0

У меня есть небольшой скрипт, который создает резервную копию каждые 2 часа. Теперь я хотел бы удалить старые. Я знаю, что «найти» может это сделать, но я хочу, чтобы он был более продвинутым.Debian Shell Bash Script - удаление старых резервных копий/каталогов

Я хочу, чтобы

  • всех резервные копии образуют последний 24 часа
  • 4 подпорки из последних 5 дней
  • 1 резервных из последних 14 дней
  • всех старше 14 дней могут быть удалены

Не могли бы вы рассказать мне, как это сделать. сценарий оболочки bash в debian? Я ничего не мог найти для этого. Google.

Thank you.

+0

Ваша основная проблема - «выбор», но не «удаление». И сначала вы должны перечислить все резервные копии со временем создания, а затем выбрать зарезервированные в соответствии с вашим правилом. – SaltyEgg

ответ

1

Не изобретайте велосипед. Взгляните на rsnapshot. Если вы не хотите использовать это как упражнение для обучения, я не вижу причин, по которым вы хотели бы потратить время, потраченное на решение этой проблемы.

+0

У меня есть приложение java, которое выполняет backup.sh, я не хочу усложнять его с добавлением другой программы. Да, сейчас это больше для меня, но как только он работает, он просто копирует и вставляет. Нет необходимости устанавливать дополнительные программы. – user2693017

+0

Вы в основном просите людей написать код для вас бесплатно. Rsnapshot уже делает то, что вы хотите, более сложным способом, чем вы могли бы достичь с помощью сценария bash, и ничто не мешает вам запускать 'rsnapshot' из вашей java-программы. – erjoalgo

+0

mhh, я не хочу, чтобы вы написали код для меня. Я просто подумал, что могу привести пример или ссылку, которая показывает, как это сделать. – user2693017

Смежные вопросы