备份所有用户的crontab文件并备份涉及的脚本

#!/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 *

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值