четверг, 1 декабря 2011 г.

Как используя CRON задание проводить чистку от старых файлов или логов?

Собственно для этого можно написать очень простой, наглядный и надёжный скрипт использующий команду find. В действительности, можно вызывать find прямо в задании cron'a, а скрипт приведён для наглядности:


#!/bin/bash

#to_clean archive pattern
to_clean_pattern=/production_logs/system-log.*
#File's status was created (ctime), last changed(mtime).
days=40

#find ${to_clean_pattern} -ctime +${days} -exec echo {} \; #debug
find ${to_clean_pattern} -ctime +${days} -exec rm -f {} \;

exit 0

Параметр ctime используем для определения времени создания файлов, если необходимо время модификации - mtime, доступа - atime.

Вот и всё :).

Комментариев нет:

Отправить комментарий