Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #!/bin/bash
- # get a list of files and dates from ftp and remove files older than ndays
- set -xv
- ftpsite='ftp-host'
- ftpuser='ftp-username'
- ftppass='ftp-password'
- putdir="/Backup/dmp/"
- ndays=1
- # work out our cutoff date
- MM=`date --date="$ndays days ago" +%b`
- DD=`date --date="$ndays days ago" +%d`
- echo removing files older than $MM $DD
- # get directory listing from remote source
- listing=`ftp -i -n $ftpsite <<EOMYF
- user $ftpuser $ftppass
- binary
- cd $putdir
- ls
- quit
- EOMYF
- `
- lista=( $listing )
- # loop over our files
- for ((FNO=0; FNO<${#lista[@]}; FNO+=9));do
- # month (element 7), day (element 8) and filename (element 8)
- echo Date ${lista[`expr $FNO + 7`]} ${lista[`expr $FNO + 8`]} File: ${lista[`expr $FNO + 10`]}
- # check the date stamp
- if [[ ${lista[$((FNO + 7))]} == "$MM" ]]; then
- if [[ ${lista[$((FNO + 8))]} == "$DD" ]]; then
- # Remove this file
- echo "Removing ${lista[`expr $FNO + 10`]}"
- ftp -i -n $ftpsite <<EOMYF2
- user $ftpuser $ftppass
- binary
- cd $putdir
- delete ${lista[$((FNO + 10))]}
- quit
- EOMYF2
- fi
- fi
- done
- ftpsite='ftp-host'
- + ftpsite=ftp-host
- ftpuser='sd-xxxx'
- + ftpuser=sd-xxxx
- ftppass='xxxxxxx'
- + ftppass='xxxxxxxx'
- putdir="/Backup/dmp/"
- + putdir=/Backup/dmp/
- ndays=1
- + ndays=1
- # work out our cutoff date
- MM=`date --date="$ndays days ago" +%b`
- date --date="$ndays days ago" +%b
- ++ date '--date=1 days ago' +%b
- + MM=Jul
- DD=`date --date="$ndays days ago" +%d`
- date --date="$ndays days ago" +%d
- ++ date '--date=1 days ago' +%d
- + DD=10
- echo removing files older than $MM $DD
- + echo removing files older than Jul 10
- # get directory listing from remote source
- listing=`ftp -i -n $ftpsite <<EOMYF
- user $ftpuser $ftppass
- binary
- cd $putdir
- ls
- quit
- EOMYF
- `
- ftp -i -n $ftpsite <<EOMYF
- user $ftpuser $ftppass
- binary
- cd $putdir
- ls
- quit
- EOMYF
- ++ ftp -i -n dedibackup-dc2.online.net
- + listing='Trying 62.210.17.46...
- -rw-r--r-- 1 1001 ftp 12672814 Jul 7 07:57 GSW-05-07-2016.dmp
- -rw-r--r-- 1 1001 ftp 12672950 Jul 11 01:31 GSW-07-07-2016.dmp
- -rw-r--r-- 1 1001 ftp 12672991 Jul 11 01:31 GSW-08-07-2016.dmp
- -rw-r--r-- 1 1001 ftp 12672945 Jul 9 01:31 GSW-09-07-2016.dmp
- -rw-r--r-- 1 1001 ftp 12672921 Jul 11 01:31 GSW-11-07-2016.dmp
- -rw-r--r-- 1 1001 ftp 1099121178 Jul 7 07:57 MI-05-07-2016.dmp
- -rw-r--r-- 1 1001 ftp 1099121146 Jul 11 01:34 MI-07-07-2016.dmp
- -rw-r--r-- 1 1001 ftp 1099125298 Jul 11 01:37 MI-08-07-2016.dmp
- -rw-r--r-- 1 1001 ftp 1099125256 Jul 9 01:36 MI-09-07-2016.dmp
- -rw-r--r-- 1 1001 ftp 1099125203 Jul 11 01:40 MI-11-07-2016.dmp'
- lista=( $listing )
- + lista=($listing)
- # loop over our files
- for ((FNO=0; FNO<${#lista[@]}; FNO+=9));do
- # month (element 7), day (element 8) and filename (element 8)
- echo Date ${lista[`expr $FNO + 7`]} ${lista[`expr $FNO + 8`]} File: ${lista[`expr $FNO + 10`]}
- # check the date stamp
- if [[ ${lista[$((FNO + 7))]} == "$MM" ]]; then
- if [[ ${lista[$((FNO + 8))]} == "$DD" ]]; then
- # Remove this file
- echo "Removing ${lista[`expr $FNO + 10`]}"
- ftp -i -n $ftpsite <<EOMYF2
- user $ftpuser $ftppass
- binary
- cd $putdir
- delete ${lista[$((FNO + 10))]}
- quit
- EOMYF2
- fi
- fi
- done
- + (( FNO=0 ))
- + (( FNO<92 ))
- expr $FNO + 7
- ++ expr 0 + 7
- expr $FNO + 8
- ++ expr 0 + 8
- expr $FNO + 10
- ++ expr 0 + 10
- + echo Date Jul 7 File: GSW-05-07-2016.dmp
- + [[ Jul == Jul ]]
- + [[ 7 == 1 ]]
- + (( FNO+=9 ))
- + (( FNO<92 ))
- expr $FNO + 7
- ++ expr 9 + 7
- expr $FNO + 8
- ++ expr 9 + 8
- expr $FNO + 10
- ++ expr 9 + 10
- + echo Date Jul 11 File: GSW-07-07-2016.dmp
- + [[ Jul == Jul ]]
- + [[ 11 == 1 ]]
- + (( FNO+=9 ))
- + (( FNO<92 ))
- expr $FNO + 7
- ++ expr 18 + 7
- expr $FNO + 8
- ++ expr 18 + 8
- expr $FNO + 10
- ++ expr 18 + 10
- + echo Date Jul 11 File: GSW-08-07-2016.dmp
- + [[ Jul == Jul ]]
- + [[ 11 == 1 ]]
- + (( FNO+=9 ))
- + (( FNO<92 ))
- expr $FNO + 7
- ++ expr 27 + 7
- expr $FNO + 8
- ++ expr 27 + 8
- expr $FNO + 10
- ++ expr 27 + 10
- + echo Date Jul 9 File: GSW-09-07-2016.dmp
- + [[ Jul == Jul ]]
- + [[ 9 == 1 ]]
- + (( FNO+=9 ))
- + (( FNO<92 ))
- expr $FNO + 7
- ++ expr 36 + 7
- expr $FNO + 8
- ++ expr 36 + 8
- expr $FNO + 10
- ++ expr 36 + 10
- + echo Date Jul 11 File: GSW-11-07-2016.dmp
- + [[ Jul == Jul ]]
- + [[ 11 == 1 ]]
- + (( FNO+=9 ))
- + (( FNO<92 ))
- expr $FNO + 7
- ++ expr 45 + 7
- expr $FNO + 8
- ++ expr 45 + 8
- expr $FNO + 10
- ++ expr 45 + 10
- + echo Date Jul 7 File: MI-05-07-2016.dmp
- + [[ Jul == Jul ]]
- + [[ 7 == 1 ]]
- + (( FNO+=9 ))
- + (( FNO<92 ))
- expr $FNO + 7
- ++ expr 54 + 7
- expr $FNO + 8
- ++ expr 54 + 8
- expr $FNO + 10
- ++ expr 54 + 10
- + echo Date Jul 11 File: MI-07-07-2016.dmp
- + [[ Jul == Jul ]]
- + [[ 11 == 1 ]]
- + (( FNO+=9 ))
- + (( FNO<92 ))
- expr $FNO + 7
- ++ expr 63 + 7
- expr $FNO + 8
- ++ expr 63 + 8
- expr $FNO + 10
- ++ expr 63 + 10
- + echo Date Jul 11 File: MI-08-07-2016.dmp
- + [[ Jul == Jul ]]
- + [[ 11 == 1 ]]
- + (( FNO+=9 ))
- + (( FNO<92 ))
- expr $FNO + 7
- ++ expr 72 + 7
- expr $FNO + 8
- ++ expr 72 + 8
- expr $FNO + 10
- ++ expr 72 + 10
- + echo Date Jul 9 File: MI-09-07-2016.dmp
- + [[ Jul == Jul ]]
- + [[ 9 == 1 ]]
- + (( FNO+=9 ))
- + (( FNO<92 ))
- expr $FNO + 7
- ++ expr 81 + 7
- expr $FNO + 8
- ++ expr 81 + 8
- expr $FNO + 10
- ++ expr 81 + 10
- + echo Date Jul 11 File: MI-11-07-2016.dmp
- + [[ Jul == Jul ]]
- + [[ 11 == 1 ]]
- + (( FNO+=9 ))
- + (( FNO<92 ))
- expr $FNO + 7
- ++ expr 90 + 7
- expr $FNO + 8
- ++ expr 90 + 8
- expr $FNO + 10
- ++ expr 90 + 10
- + echo Date File:
- + [[ '' == Jul ]]
- + (( FNO+=9 ))
- + (( FNO<92 ))
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement