1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
| #!/bin/bash
#written by dqznn88
#maill: dqznn88@126.com
#date: 2014-09-23
#
DSTDIR="/backup/tomcat_$(date +%Y%m%d)/"
POSTFIX="xml"
md5_sum_dir="/backup/tomcat/sum/"
md5_in="${DIR}"
md5_new_sum_file="${md5_sum_dir}tomcat_md5_sum.$(date +%Y%m%d)"
md5_old_sum_file="${md5_sum_dir}tomcat_md5_sum_old"
#############################################################
# backup directory
# for DIRNAME in $(find $DIR -type d )
# do
# #echo "dirctory name is $DIRNAME"
# FULLDIR=${DIRNAME/$DIR/$DSTDIR}
# if [ ! -d $FULLDIR ];then
# mkdir -p $FULLDIR
# fi
# done
# echo "backup $DIR directory specified $POSTFIX"
##################################################################
if [ ! -d $DSTDIR ];then
cp -a $DIR $DSTDIR && echo "$DIR directory to $DSTDIR backup successfully"
################################################################
if [ ! -d ${md5_sum_dir} ];then
mkdir -p ${md5_sum_dir}
fi
find ${md5_in} | xargs -I {} md5sum {} >> $md5_new_sum_file 2>/dev/null && echo "directory md5 sum "
new_sum_ok=`md5sum -c ${md5_new_sum_file} 2>/dev/null | awk '$2~"OK"' |wc -l`
old_sum_ok=`md5sum -c ${md5_old_sum_file} 2>/dev/null | awk '$2~"OK"' |wc -l`
if [ ${old_sum_ok} == ${new_sum_ok} ];then
echo "because today and yesterday content is the same,delete yesterday centent!"
cp $md5_new_sum_file $md5_old_sum_file -r
rm -fr ${md5_in_yer} && rm -fr ${md5_new_sum_file} && echo "delete old file "
fi
##################################################################
#the first execute this script,create 'md5_old_sum_file' file,afterwards,everytime change $DSTDIR directory backup 'sum_file' file.
cp $md5_new_sum_file $md5_old_sum_file -r &>/dev/null
|