#!/bin/bash  
#做  
#根据项目同重命名该脚本  
#例 amountebak.sh or pandawillsbak.sh  
#该脚本放 $bakpp定义绝路径部  
#$bakpp找相应备份文件  
#例 /usr/backup/amountebak.sh or /usr/backup/pandawillsbak.sh  
########## Init Path ########  
# 面参数必须定义参数 $bakpp、$project、$projectpp  
TAR=/bin/tar  
# 存放备份文件项目名称区  
bakpp=/apps/beifen/"$project"  
# 需要备份文件夹文件夹路径  
project=djk  
projectpp=/apps/apache-tomcat-8.5.9/webapps/vlis/ 
# parament for varible  
ym=`date +%Y%m`  
ymd=`date +%Y%m%d`  
# 存储备份文件目录月份区级目录$bakpp定义  
monthbakpp=$bakpp/$ym  
gidpp=$monthbakpp  
gidshot=gid$project$ym  
# 完全备份文件名  
fullname=$ym  
# 增量备份文件名  
incrementalname=$ymd  
# Record the location of the log  
log=$bakpp/$project.log  
############ chk_full #######################  
# 检查完全备份否存存创建  
#this function check fullbackup file exist or not , if not then create fullbackup now  
chk_full()  
{  
if [ -e "$monthbakpp"/"$project"_"$ym"_full.tar.gz ];then  
echo ""$project"_"$ym"_full.tar.gz file exist!! ====`date +%Y-%m-%d-%T` " >>$log  
else  
tar_full  
fi  
}  
######### chk_incremental ########  
# 检查增量备份否存  
chk_incremental()  
{  
while [ -e "$monthbakpp"/"$project"_"$incrementalname"_incremental.tar.gz ]  
do  
incrementalname=`echo "$incrementalname + 0.1" | bc `  
done  
}  
######## tar_incremental #######  
# 执行增量备份  
tar_incremental()  
{  
cd $projectpp  
echo "BEIGIN_TIME=====`date +%Y-%m-%d-%T` ==== CREATE "$project"_"$incrementalname"_incremental.tar.gz" >> $log  
sleep 3  
$TAR -g $gidpp/$gidshot -zcf $monthbakpp/"$project"_"$incrementalname"_incremental.tar.gz $project  
echo "END_TIME========`date +%Y-%m-%d-%T` ==== CREATE "$project"_"$incrementalname"_incremental.tar.gz" >> $log  
}  
######## tar_full ###########  
tar_full()  
{  
touch $gidpp/$gidshot  
cd $projectpp  
echo "BEIGIN_TIME=====`date +%Y-%m-%d-%T` ==== CREATE "$project"_"$fullname"_full.tar.gz" >> $log  
$TAR -g $gidpp/$gidshot -zcf $monthbakpp/"$project"_"$fullname"_full.tar.gz $project  
echo "END_TIME========`date +%Y-%m-%d-%T` ==== CREATE "$project"_"$fullname"_full.tar.gz" >> $log  
}  
########### backup ##############################  
# 总体调用备份做相应检查确保备份前提准备充  
backup()  
{  
if [ -d $monthbakpp ]; then  
   chk_full  
   chk_incremental  
   tar_incremental  
else  
mkdir -p $bakpp/$ym  
tar_full  
fi  
}  
########### let's begin #############  
# 先检查$bakpp否存存先创建备份  
if [ -d $bakpp ];then  
backup  
else  
mkdir -p $bakpp  
backup  
fi  
#advice you can create a file for put backup file, eg /usr/cctcc  
#crontab  
#mini hours day month week command  
# */5 * * * * /home/mmroot/zbb/aaa.sh  
# 44 11 * * * /usr/tmp/vcan.sh

# tar -ztf test.tar.gz 查看备份文件面文件

---------------------------------代码结束----------人称可爱的分割线------------------------------------------------------

将上述文件放到你要运行的文件中

vi   /usr/tmp/vlisVcan.sh

上面代码复制粘贴

根据自己需求的不同只需要修改上面代码中的三个位置

# 存放备份文件项目名称区  
bakpp=/apps/beifen/"$project"

# 需要备份文件夹和文件夹路径  
project=djk

projectpp=/apps/apache-tomcat-8.5.9/webapps/vlis/

然后在设置定时器,创建定时器文件

vi  /usr/tmp/task

填写定时器

* * * * *  命令  文件 ;

分钟 小时 天  月 星期几

例:12 12 * * * /bin/sh /root/remove.sh                 //每天12点12分执行

保存文件然后利用crontab /usr/tmp/task 使生效。

查看任务列表 crontab -l  显示你设置的定时器就ok了。

centos 7 定时备份文件夹,增量文件相关推荐

  1. windows2008 使用windows server backup定时备份文件夹和批处理脚本定时删除文件夹

    由于公司OA需要定期备份数据库文件,及定时删除超过7天的备份文件,通过windows2008自带的windows Server Backup 备份文件夹,及forfile 来定时删除超过时间的文件 由 ...

  2. linux定时备份文件到指定文件夹,Linux定时备份数据库到指定邮箱的方法

    一.配置邮箱 这里使用的是网易邮箱126邮箱的STMP服务,服务器是smtp.126.com.如果你使用其它第三方邮箱,在帐号设置那里一般都有说明SMTP服务器地址. 如果你的Ubuntu没有安装ma ...

  3. linux自动备份不同的文件夹,linux定时备份文件夹

    把一个目录下的所有文件定时备份到另一个目录. 步骤: 1.# vi /home/scripts/backup.sh # create by athlandly 2007/12/10 # shell c ...

  4. windows10中定时备份文件和清除文件

    近期需要在W10服务器中对某个文件做一个定时备份,保存一定时间后需要定时清除 方法如下: 1.新建txt文档 拷贝文件到指定位置 注释:          /e 表示 拷贝所有子目录,包括空子目录   ...

  5. python 读取文件夹 增量文件_Python实现目录文件的全量和增量备份

    目标: 1.传入3个参数:源文件路径,目标文件路径,md5文件 2.每周一实现全量备份,其余时间增量备份 1.通过传入的路径,获取该路径下面的所有目录和文件(递归) 方法一:使用os.listdir ...

  6. BAT命令用RoboCopy定期备份文件夹

    用RoboCopy定期备份文件夹 把以下命令复制到记事本,保存成bat,然后用系统自带的计划作业配置定时执行,就实现了定时备份文件夹了 再用SyncBackPro同步到ftp里面就实现了异地备份了 S ...

  7. linux实现对上传文件的定时备份、增量备份

    前言 上一章我详细介绍了上传文件至服务器路径的方法,那么上传完文件就结束了吗?显然没有. 介绍 如果你们使用的是类似阿里云的OSS存储服务,那么可以使用服务提供的定时备份,这样可以不用考虑在服务器上做 ...

  8. centos彻底删除文件夹、文件命令

    centos彻底删除文件夹.文件命令(centos 新建.删除.移动.复制等命令: 1.新建文件夹 mkdir 文件名 新建一个名为test的文件夹在home下 view source1 mkdir ...

  9. linux服务器 增量,CentOS 自动备份增量文件

    还是利用crontab功能,这个功能太实用了,赞一个先 利用人家的备份脚本: #!/bin/bash #好的做法 #根据项目不同来重命名该脚本 #例如 amountebak.sh or pandawi ...

最新文章

  1. 读取串口数据_自定义串口通信的相关问题整理
  2. Chrome DevTools — Network
  3. java holder 遍历_复合组件editableValueHolder与Bean验证不一致
  4. 深度学习与计算机视觉(三)最优化与梯度下降
  5. jQuery新版本加载json注意事项。
  6. 3班的第一次模拟面试
  7. 2019昆明计算机会议,计算机 | ACSAC 2019等国际会议信息6条
  8. 【加解密学习笔记:第一天】操作系统基础知识
  9. c++并发编程基础(一):并发、并行域多线程
  10. 使用jquery检查/取消选中复选框? [重复]
  11. 《学习之道》第十七章保持平静
  12. r-cnn 行人检测_了解对象检测和R-CNN。
  13. php开发pdf,使用PHP编写PDF(PDFLib)
  14. 利用Java寻找完美数
  15. python开发平台介绍_【Python 入门】简介与搭建开发环境
  16. 高一计算机算法教案,高中信息技术 算法及其实现 教案
  17. s-function的介绍
  18. 工业质检-缺陷检测数据集
  19. vmware虚拟机安装win7_VMware虚拟机安装教程
  20. 基于FPGA实现的DDS双通道信号发生器

热门文章

  1. 机械臂机器人——(4)Robotics Toolbox机器人仿真
  2. 三菱服务器显示003C,三菱电机空调出现故障代码大全及原因
  3. 重新编译 vcl70.bpl
  4. 基于STM32的智能风扇的制作
  5. asp.net 隐藏url 简便方法
  6. c语言本地函数声明非法,C++本地函数定义是非法的
  7. Java web项目利用POI导出EXCEL表格
  8. 工商局爬虫 商标网爬虫
  9. LD链接脚本解析-STM32F4xx
  10. echarts如何在json地图上设置多种颜色的点位和自定义背景弹出框