#!/bin/bash
source /etc/profile
DAY=`date -d "-1 days" +%Y%m%d`
EIGHT=`date -d "-8 days" +%Y%m%d`
BACKUP_CRON_PATH=/home/backup/cron
##开始备份,加上时间戳
echo "begin tar crontab:"`date` >>${BACKUP_CRON_PATH}/backup.log
echo "">>${BACKUP_CRON_PATH}/backup.log
if [[ ! -d $BACKUP_CRON_PATH/${DAY} ]]
then
mkdir -p $BACKUP_CRON_PATH/${DAY}
fi
#获取IP
IP=`ifconfig|grep "inet addr"|egrep "10.10.10|192.168"|grep -v "127.0.0"|grep "Mask:255.255.255"|awk -F[:] '{print $2}'|awk -F " " '{print $1}'`
cd $BACKUP_CRON_PATH
##USERcron是指每个crontab的用户
for USERcron in `ls /var/spool/cron/`
do
cat /var/spool/cron/${USERcron} |grep -v ^$ > ${BACKUP_CRON_PATH}/${DAY}/${IP}.${DAY}.${USERcron}_cron
cat /var/spool/cron/${USERcron} |sed 's/^[ \t]*//g'|grep -v htm|grep -v curl |grep -v ^$ > ${BACKUP_CRON_PATH}/${DAY}/${IP}.${DAY}.${USERcron}_cron2
while read abc
do
#echo $abc
j=`echo "$abc"|grep -v ^#|grep -v ^$|grep -v curl|grep -v ^$|awk -F"*" '{print $NF}'|awk -F">" '{print $1}'|awk '{print $NF}'|sed "s/'//g"|grep -v ^$`
echo $j
if [[ -n $j ]]
then
if [[ ! -e $j ]]
then echo ${USERcron} $j is not exists >>${BACKUP_CRON_PATH}/${DAY}/cp.log
else
echo ${USERcron} $j is exists >>${BACKUP_CRON_PATH}/${DAY}/cp.log
cp $j ${BACKUP_CRON_PATH}/${DAY} >> ${BACKUP_CRON_PATH}/${DAY}/cp.log 2>&1
fi
fi
done < ${BACKUP_CRON_PATH}/${DAY}/${IP}.${DAY}.${USERcron}_cron2
done
rm -rf ${BACKUP_CRON_PATH}/${DAY}/${IP}.${DAY}.*cron2
rm -rf ${BACKUP_CRON_PATH}/*${EIGHT}*
cd $BACKUP_CRON_PATH/${DAY}
tar -zcvf ${IP}.${DAY}.cron.tar.gz *