... | ... |
@@ -1,4 +1,14 @@ |
1 | 1 |
#!/bin/bash |
2 |
+ |
|
3 |
+ |
|
4 |
+#+++++++++++++++++++++++++++++++++++++++++++++++++++ |
|
5 |
+# eSales Media Backup Script |
|
6 |
+# |
|
7 |
+# Author: Benjamin Roth |
|
8 |
+# Version: 18.0.3 |
|
9 |
+#+++++++++++++++++++++++++++++++++++++++++++++++++++ |
|
10 |
+ |
|
11 |
+ |
|
2 | 12 |
if [ ! $1 -a $2 -a $3 ] |
3 | 13 |
then |
4 | 14 |
echo "Wrong parameter count." |
1 | 1 |
new file mode 100644 |
... | ... |
@@ -0,0 +1,46 @@ |
1 |
+#!/bin/bash |
|
2 |
+if [ ! $1 -a $2 -a $3 ] |
|
3 |
+then |
|
4 |
+ echo "Wrong parameter count." |
|
5 |
+ exit 1 |
|
6 |
+fi |
|
7 |
+ |
|
8 |
+##################### |
|
9 |
+# PARAMETER # |
|
10 |
+##################### |
|
11 |
+TARGETDIR=$2 |
|
12 |
+DAYOFFSET=`echo $1 | awk -F:: '{ print $2 }'` |
|
13 |
+let MINUTEOFFSET=${DAYOFFSET}*1440+30 |
|
14 |
+JOBNAME=$3 |
|
15 |
+ |
|
16 |
+ |
|
17 |
+ |
|
18 |
+################### |
|
19 |
+# CLEANUP # |
|
20 |
+################### |
|
21 |
+if [ -d $TARGETDIR ] |
|
22 |
+then |
|
23 |
+ # Check for existing backup files |
|
24 |
+ OBSOLETECOUNT=`find $TARGETDIR -maxdepth 1 -mmin +${MINUTEOFFSET} -type f -regex ".*/${JOBNAME//\./\\.}_[0-9]*\(_?[0-9]*\)\..*" | wc -l` |
|
25 |
+ VALIDCOUNT=`find $TARGETDIR -maxdepth 1 -mmin -${MINUTEOFFSET} -type f -regex ".*/${JOBNAME//\./\\.}_[0-9]*\(_?[0-9]*\)\..*" | wc -l` |
|
26 |
+ |
|
27 |
+ if [ "$OBSOLETECOUNT" -gt 0 -a "$VALIDCOUNT" -gt 1 ] |
|
28 |
+ then |
|
29 |
+ find $TARGETDIR -maxdepth 1 -mmin +${MINUTEOFFSET} -type f -regex ".*/${JOBNAME//\./\\.}_[0-9]*\(_?[0-9]*\)\..*" | |
|
30 |
+ while read LINE |
|
31 |
+ do |
|
32 |
+ if [ -f $LINE ] |
|
33 |
+ then |
|
34 |
+ rm -f $LINE &> /dev/null |
|
35 |
+ fi |
|
36 |
+ done |
|
37 |
+ echo "Cleanup of ${OBSOLETECOUNT} files completed" |
|
38 |
+ exit 0 |
|
39 |
+ else |
|
40 |
+ echo "Nothing to cleanup" |
|
41 |
+ exit 0 |
|
42 |
+ fi |
|
43 |
+else |
|
44 |
+ echo "Check source directory!" |
|
45 |
+ exit 1 |
|
46 |
+fi |