Advertisement
Guest User

Untitled

a guest
Jul 11th, 2016
77
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 5.24 KB | None | 0 0
  1. #!/bin/bash
  2. # get a list of files and dates from ftp and remove files older than ndays
  3. set -xv
  4. ftpsite='ftp-host'
  5. ftpuser='ftp-username'
  6. ftppass='ftp-password'
  7. putdir="/Backup/dmp/"
  8.  
  9. ndays=1
  10.  
  11. # work out our cutoff date
  12. MM=`date --date="$ndays days ago" +%b`
  13. DD=`date --date="$ndays days ago" +%d`
  14.  
  15. echo removing files older than $MM $DD
  16.  
  17. # get directory listing from remote source
  18. listing=`ftp -i -n $ftpsite <<EOMYF
  19. user $ftpuser $ftppass
  20. binary
  21. cd $putdir
  22. ls
  23. quit
  24. EOMYF
  25. `
  26. lista=( $listing )
  27.  
  28. # loop over our files
  29. for ((FNO=0; FNO<${#lista[@]}; FNO+=9));do
  30.  
  31. # month (element 7), day (element 8) and filename (element 8)
  32. echo Date ${lista[`expr $FNO + 7`]} ${lista[`expr $FNO + 8`]} File: ${lista[`expr $FNO + 10`]}
  33.  
  34. # check the date stamp
  35. if [[ ${lista[$((FNO + 7))]} == "$MM" ]]; then
  36. if [[ ${lista[$((FNO + 8))]} == "$DD" ]]; then
  37.  
  38. # Remove this file
  39. echo "Removing ${lista[`expr $FNO + 10`]}"
  40. ftp -i -n $ftpsite <<EOMYF2
  41. user $ftpuser $ftppass
  42. binary
  43. cd $putdir
  44. delete ${lista[$((FNO + 10))]}
  45. quit
  46. EOMYF2
  47. fi
  48. fi
  49. done
  50.  
  51. ftpsite='ftp-host'
  52. + ftpsite=ftp-host
  53. ftpuser='sd-xxxx'
  54. + ftpuser=sd-xxxx
  55. ftppass='xxxxxxx'
  56. + ftppass='xxxxxxxx'
  57. putdir="/Backup/dmp/"
  58. + putdir=/Backup/dmp/
  59.  
  60. ndays=1
  61. + ndays=1
  62.  
  63. # work out our cutoff date
  64. MM=`date --date="$ndays days ago" +%b`
  65. date --date="$ndays days ago" +%b
  66. ++ date '--date=1 days ago' +%b
  67. + MM=Jul
  68. DD=`date --date="$ndays days ago" +%d`
  69. date --date="$ndays days ago" +%d
  70. ++ date '--date=1 days ago' +%d
  71. + DD=10
  72.  
  73. echo removing files older than $MM $DD
  74. + echo removing files older than Jul 10
  75.  
  76. # get directory listing from remote source
  77. listing=`ftp -i -n $ftpsite <<EOMYF
  78. user $ftpuser $ftppass
  79. binary
  80. cd $putdir
  81. ls
  82. quit
  83. EOMYF
  84. `
  85. ftp -i -n $ftpsite <<EOMYF
  86. user $ftpuser $ftppass
  87. binary
  88. cd $putdir
  89. ls
  90. quit
  91. EOMYF
  92. ++ ftp -i -n dedibackup-dc2.online.net
  93. + listing='Trying 62.210.17.46...
  94. -rw-r--r-- 1 1001 ftp 12672814 Jul 7 07:57 GSW-05-07-2016.dmp
  95. -rw-r--r-- 1 1001 ftp 12672950 Jul 11 01:31 GSW-07-07-2016.dmp
  96. -rw-r--r-- 1 1001 ftp 12672991 Jul 11 01:31 GSW-08-07-2016.dmp
  97. -rw-r--r-- 1 1001 ftp 12672945 Jul 9 01:31 GSW-09-07-2016.dmp
  98. -rw-r--r-- 1 1001 ftp 12672921 Jul 11 01:31 GSW-11-07-2016.dmp
  99. -rw-r--r-- 1 1001 ftp 1099121178 Jul 7 07:57 MI-05-07-2016.dmp
  100. -rw-r--r-- 1 1001 ftp 1099121146 Jul 11 01:34 MI-07-07-2016.dmp
  101. -rw-r--r-- 1 1001 ftp 1099125298 Jul 11 01:37 MI-08-07-2016.dmp
  102. -rw-r--r-- 1 1001 ftp 1099125256 Jul 9 01:36 MI-09-07-2016.dmp
  103. -rw-r--r-- 1 1001 ftp 1099125203 Jul 11 01:40 MI-11-07-2016.dmp'
  104. lista=( $listing )
  105. + lista=($listing)
  106.  
  107. # loop over our files
  108. for ((FNO=0; FNO<${#lista[@]}; FNO+=9));do
  109. # month (element 7), day (element 8) and filename (element 8)
  110. echo Date ${lista[`expr $FNO + 7`]} ${lista[`expr $FNO + 8`]} File: ${lista[`expr $FNO + 10`]}
  111.  
  112. # check the date stamp
  113. if [[ ${lista[$((FNO + 7))]} == "$MM" ]]; then
  114. if [[ ${lista[$((FNO + 8))]} == "$DD" ]]; then
  115.  
  116. # Remove this file
  117. echo "Removing ${lista[`expr $FNO + 10`]}"
  118. ftp -i -n $ftpsite <<EOMYF2
  119. user $ftpuser $ftppass
  120. binary
  121. cd $putdir
  122. delete ${lista[$((FNO + 10))]}
  123. quit
  124. EOMYF2
  125. fi
  126. fi
  127. done
  128. + (( FNO=0 ))
  129. + (( FNO<92 ))
  130. expr $FNO + 7
  131. ++ expr 0 + 7
  132. expr $FNO + 8
  133. ++ expr 0 + 8
  134. expr $FNO + 10
  135. ++ expr 0 + 10
  136. + echo Date Jul 7 File: GSW-05-07-2016.dmp
  137. + [[ Jul == Jul ]]
  138. + [[ 7 == 1 ]]
  139. + (( FNO+=9 ))
  140. + (( FNO<92 ))
  141. expr $FNO + 7
  142. ++ expr 9 + 7
  143. expr $FNO + 8
  144. ++ expr 9 + 8
  145. expr $FNO + 10
  146. ++ expr 9 + 10
  147. + echo Date Jul 11 File: GSW-07-07-2016.dmp
  148. + [[ Jul == Jul ]]
  149. + [[ 11 == 1 ]]
  150. + (( FNO+=9 ))
  151. + (( FNO<92 ))
  152. expr $FNO + 7
  153. ++ expr 18 + 7
  154. expr $FNO + 8
  155. ++ expr 18 + 8
  156. expr $FNO + 10
  157. ++ expr 18 + 10
  158. + echo Date Jul 11 File: GSW-08-07-2016.dmp
  159. + [[ Jul == Jul ]]
  160. + [[ 11 == 1 ]]
  161. + (( FNO+=9 ))
  162. + (( FNO<92 ))
  163. expr $FNO + 7
  164. ++ expr 27 + 7
  165. expr $FNO + 8
  166. ++ expr 27 + 8
  167. expr $FNO + 10
  168. ++ expr 27 + 10
  169. + echo Date Jul 9 File: GSW-09-07-2016.dmp
  170. + [[ Jul == Jul ]]
  171. + [[ 9 == 1 ]]
  172. + (( FNO+=9 ))
  173. + (( FNO<92 ))
  174. expr $FNO + 7
  175. ++ expr 36 + 7
  176. expr $FNO + 8
  177. ++ expr 36 + 8
  178. expr $FNO + 10
  179. ++ expr 36 + 10
  180. + echo Date Jul 11 File: GSW-11-07-2016.dmp
  181. + [[ Jul == Jul ]]
  182. + [[ 11 == 1 ]]
  183. + (( FNO+=9 ))
  184. + (( FNO<92 ))
  185. expr $FNO + 7
  186. ++ expr 45 + 7
  187. expr $FNO + 8
  188. ++ expr 45 + 8
  189. expr $FNO + 10
  190. ++ expr 45 + 10
  191. + echo Date Jul 7 File: MI-05-07-2016.dmp
  192. + [[ Jul == Jul ]]
  193. + [[ 7 == 1 ]]
  194. + (( FNO+=9 ))
  195. + (( FNO<92 ))
  196. expr $FNO + 7
  197. ++ expr 54 + 7
  198. expr $FNO + 8
  199. ++ expr 54 + 8
  200. expr $FNO + 10
  201. ++ expr 54 + 10
  202. + echo Date Jul 11 File: MI-07-07-2016.dmp
  203. + [[ Jul == Jul ]]
  204. + [[ 11 == 1 ]]
  205. + (( FNO+=9 ))
  206. + (( FNO<92 ))
  207. expr $FNO + 7
  208. ++ expr 63 + 7
  209. expr $FNO + 8
  210. ++ expr 63 + 8
  211. expr $FNO + 10
  212. ++ expr 63 + 10
  213. + echo Date Jul 11 File: MI-08-07-2016.dmp
  214. + [[ Jul == Jul ]]
  215. + [[ 11 == 1 ]]
  216. + (( FNO+=9 ))
  217. + (( FNO<92 ))
  218. expr $FNO + 7
  219. ++ expr 72 + 7
  220. expr $FNO + 8
  221. ++ expr 72 + 8
  222. expr $FNO + 10
  223. ++ expr 72 + 10
  224. + echo Date Jul 9 File: MI-09-07-2016.dmp
  225. + [[ Jul == Jul ]]
  226. + [[ 9 == 1 ]]
  227. + (( FNO+=9 ))
  228. + (( FNO<92 ))
  229. expr $FNO + 7
  230. ++ expr 81 + 7
  231. expr $FNO + 8
  232. ++ expr 81 + 8
  233. expr $FNO + 10
  234. ++ expr 81 + 10
  235. + echo Date Jul 11 File: MI-11-07-2016.dmp
  236. + [[ Jul == Jul ]]
  237. + [[ 11 == 1 ]]
  238. + (( FNO+=9 ))
  239. + (( FNO<92 ))
  240. expr $FNO + 7
  241. ++ expr 90 + 7
  242. expr $FNO + 8
  243. ++ expr 90 + 8
  244. expr $FNO + 10
  245. ++ expr 90 + 10
  246. + echo Date File:
  247. + [[ '' == Jul ]]
  248. + (( FNO+=9 ))
  249. + (( FNO<92 ))
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement