需求:每天打包新增的文件

本文介绍了一个自动化脚本,用于每天备份指定文件夹下多个子目录的新增或修改文件,若无变动则跳过,打包成压缩包以节省存储。脚本通过`find`命令检查新旧文件,只处理有变化的目录,并在备份完成后清理临时文件夹。
摘要由CSDN通过智能技术生成

1、每天对指定文件夹下多个目录新增文件进行备份

2、如果当天没有新增或者修改的文件,则不进行处理

3、有文件则打包成压缩包

4、由于文件备份

#!/bin/bash

#知识文件备份当天的数据
#日期
today=`date +"%Y%m%d"`
yesterday=`date -d yesterday +%Y%m%d`
#备份的源路径
zsk_source_dir=/home/www/zsk
#备份保存目标路径
backup_dir=/home/data/backup-file
#要执行备份的二级目录,空格隔开
zsk_dir_str='0000 lucenePathIndex'
#循环处理需要备份的目录
if [ -d ${backup_dir} -a "`ls -A ${backup_dir}`" != "" ]; then
    #有文件则先清空数据
    rm -rf $backup_dir/*
     
fi
for str in $zsk_dir_str
do
    echo $str
    #创建当天文件夹
    zsk_day_dir=$backup_dir/$str-$today
    echo $zsk_day_dir
    if [ ! -d $zsk_day_dir ];
    then
        mkdir -p $zsk_day_dir;
        #将当前新增、修改的知识进行打包
        find $zsk_source_dir/$str -mtime 0 |xargs -i cp {} $zsk_day_dir
        #判断当天文件夹下是否有问题
            if [ -d ${zsk_day_dir} -a "`ls -A ${zsk_day_dir}`" != "" ]; then
                #有文件对当天的文件进行打包
                tar -zcvf $zsk_day_dir.tar.gz $zsk_day_dir/
                echo $zsk_day_dir.tar.gz
            fi
        #删除生成的文件夹
        rm -rf $zsk_day_dir
    fi

done
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值