#!/bin/bash #该脚本需要放到FILEDIR下执行,awk中的$变量需要根据FILEDIR的路径深度进行修改 FILEDIR=/opt/qianqu/upload/ BAKDIR=/data0/qianqupicbak/ find $FILEDIR -maxdepth 1 -mtime +30 -type d |awk -F '/' '{print $5".tar.gz"}''{print $5"/"}'|xargs -n2 tar --remove-files -zcvf ##注意有些系统的tar版本有问题--remove-files参数只能删除目录下的文件,但是目录结构不会删除。这时需要去掉该选项,然后使用下面的rm直接删除 ##find $FILEDIR -maxdepth 1 -mtime +30 -type d |xargs rm -fr mv $FILEDIR*.gz $BAKDIR
将特定目录下30天前的各日期文件夹打包、压缩、删除源文件并且转移到特定目录下
原创
©著作权归作者所有:来自51CTO博客作者verycici的原创作品,请联系作者获取转载授权,否则将追究法律责任
提问和评论都可以,用心的回复会被更多人看到
评论
发布评论
相关文章
-
linux文件备份脚本(按天备份)
摘录自:Linux命令行与shell脚本编程大全.第3版
linux文件备份 shell脚本 按天备份