#!/bin/bash source $(dirname $0)/ftp.settings last_day=0 last_month=0 last_year=0 two_years_ago_y=$(date -d '-2years' +%Y) two_years_ago_m=$(date -d '-2years' +%m) six_months_ago_y=$(date -d '-6month' +%Y) six_months_ago_m=$(date -d '-6month' +%m) one_month_ago_y=$(date -d '-1month' +%Y) one_month_ago_m=$(date -d '-1month' +%m) one_month_ago_d=$(date -d '-1month' +%d) ncftpls -u"${FTP_USER}" -p"${FTP_PASSWORD}" "ftp://${FTP_SERVER}/${FTP_TARGET}/" | \ sed -nr 's/(^.*)([0-9]{4})-([0-9]{2})-([0-9]{2}).*/\2\t\3\t\4 \1/gp' | \ sort -n | uniq | awk -F'\t' '{ print $1" "$2" "$3}' | while read y m d name do # older than 2 years, only keep 1 per month if [ $y -lt $two_years_ago_y -o \ \( $y -eq $two_years_ago_y -a $m -lt $two_years_ago_m \) ]; then if [ $last_month -eq $m ]; then ncftp -u"${FTP_USER}" \ -p"${FTP_PASSWORD}" \ "ftp://${FTP_SERVER}/${FTP_TARGET}/" >/dev/null </dev/null </dev/null <