получилась следующая конструкция, кажись работает. стат подошел полностью -
в мане в самом низу нужный пример.

#!/bin/sh
# 517.backup v1.01

if [ -r /etc/defaults/periodic.conf ]; then
    . /etc/defaults/periodic.conf
        source_periodic_confs
fi

: ${backup_enable="YES"}

# variables
date_full=$(date +%Y-%m-%d)
date_current=$(date +%d)
date_minus_month=$(date -v-1m +%Y-%m-%d)

case "$backup_enable" in [Yy][Ee][Ss])

if [ -f /usr/local/etc/periodic/517.backup.list ]; then
        find `cat /usr/local/etc/periodic/517.backup.list` | cpio -dmp
/samba/backup/${date_full}
fi

if [ ${date_current} != 1 ]; then
        if [ -d /samba/backup/${date_minus_month} ]; then
                if [ ${date_minus_month} = `stat -f %Sm -t %Y-%m-%d
/samba/backup/${date_minus_month}` ]; then
                        rm -rf /samba/backup/${date_minus_month}
                fi
        fi

fi

    ;;
    *)  rc=0;;
esac

exit $rc

Ответить