Страница 1 из 1
shell-cкрипт для архивирования
Добавлено: 2008-09-22 16:52:53
XaTTa6bl4
Hi all!
Время-от времени приходится архивировать большое кол-во файлов и каталогов. Решил написать sh скрипт. Входным параметром должна быть дата, а скрипт должен обрабатывать все папки и файлы в текущем каталоге, у которых дата изменения меньше введенной. Как это лучше реализовать?

Re: shell-cкрипт для архивирования
Добавлено: 2008-09-22 17:18:14
zg
на make, он это дело хорошо умеет
Re: shell-cкрипт для архивирования
Добавлено: 2008-09-23 8:05:49
Alex Keda
XaTTa6bl4 писал(а):Hi all!
Время-от времени приходится архивировать большое кол-во файлов и каталогов. Решил написать sh скрипт. Входным параметром должна быть дата, а скрипт должен обрабатывать все папки и файлы в текущем каталоге, у которых дата изменения меньше введенной. Как это лучше реализовать?

find
Re: shell-cкрипт для архивирования
Добавлено: 2008-09-23 13:34:02
XaTTa6bl4
Можно немного поподробнее? У меня еще не много опыта в скриптописании...
Использовать find с -mtime ? Но в таком случае нужно как-то дату преобразовывать...
Re: shell-cкрипт для архивирования
Добавлено: 2008-09-23 16:48:13
XaTTa6bl4
Усе допер как сделать:)
и тп..

Завтра допишу скрипт сообщу о результатах:)
Re: shell-cкрипт для архивирования
Добавлено: 2008-09-26 10:20:03
XaTTa6bl4
Код: Выделить всё
#!/bin/sh
#
####
#Скрипт для архивирования старых почтовых ящиков
#Входной параметр - дата в формате yyyymmdd
PATH1=/var/mail/
PATH2=/mnt/3/mail_backup/
mkdir $PATH1.tmp;
cd $PATH1 &&
touch -t $1"0000" .tmp/date.tmp &&
find $PATH1 -maxdepth 1 -mindepth 1 \! -newer .tmp/date.tmp | xargs -I {} mv {} .tmp/ &&
ls .tmp/ | xargs -I {} tar -C .tmp/ -zcvf $PATH2{}.tar.gz {} &&
rm -rf .tmp
Вообщем вот что получилось:)