#!/bin/sh # # $FreeBSD: src/etc/periodic/daily/110.clean-tmps,v 1.6.2.4 2002/10/13 19:59:01 joerg Exp $ # $DragonFly: src/etc/periodic/daily/110.clean-tmps,v 1.2 2003/06/17 04:24:48 dillon Exp $ # # Perform temporary directory cleaning so that long-lived systems # don't end up with excessively old files there. # # If there is a global system configuration file, suck it in. # if [ -r /etc/defaults/periodic.conf ] then . /etc/defaults/periodic.conf source_periodic_confs fi case "$daily_clean_tmps_enable" in [Yy][Ee][Ss]) if [ -z "$daily_clean_tmps_days" ] then echo '$daily_clean_tmps_enable is set but' \ '$daily_clean_tmps_days is not' rc=2 else echo "" echo "Removing old temporary files:" set -f noglob args="-atime +$daily_clean_tmps_days -mtime +$daily_clean_tmps_days" args="${args} -ctime +$daily_clean_tmps_days" [ -n "$daily_clean_tmps_ignore" ] && args="$args "`echo " ${daily_clean_tmps_ignore% }" | sed 's/[ ][ ]*/ ! -name /g'` case "$daily_clean_tmps_verbose" in [Yy][Ee][Ss]) print=-print;; *) print=;; esac rc=$(for dir in $daily_clean_tmps_dirs do [ ."${dir#/}" != ."$dir" -a -d $dir ] && cd $dir && { find -d . -type f $args -delete $print find -d . ! -name . -type d -empty -mtime \ +$daily_clean_tmps_days -delete $print } | sed "s,^\\., $dir," done | tee /dev/stderr | wc -l) [ -z "$print" ] && rc=0 [ $rc -gt 1 ] && rc=1 set -f glob fi;; *) rc=0;; esac exit $rc