自动清除日期目录shell脚本
很多时候备份通常会使用到基于日期来创建文件夹,对于这些日期文件夹下面又有很多子文件夹,对于这些日期文件整个移除,通过find结合rm或者delete显得有些力不从心。本文提供一个简单的小脚本,可以嵌入到其他脚本,也可直接调用,如下文供大家参考。
1、脚本内容
- [root@SZDB ~]# more purge_datedir.sh
- #!/bin/bash
- # Author: Leshami
- # Blog : http://blog.csdn.net/leshami
- RemoveDir=/log/hotbak/physical
- dt=`date +%Y%m%d -d "3 day ago"`
- for subdir in `ls $RemoveDir`;
- do
- if [ "${subdir}" \< "${dt}" ];
- then
- rm -rf $RemoveDir/$subdir >/dev/null
- echo "The directory $RemoveDir/$subdir has been removed."
- fi
- done
2、演示
- [root@SZDB ~]# ls /log/hotbak/physical
- 20141203 20141210 20141217 20141224 20141231 20150107 20150114 20150125 tmp.sh
- 20141207 20141214 20141221 20141228 20150104 20150111 20150121 20150128
- [root@SZDB ~]# ./purge_datedir.sh
- The directory /log/hotbak/physical/20141203 has been removed.
- The directory /log/hotbak/physical/20141207 has been removed.
- The directory /log/hotbak/physical/20141210 has been removed.
- The directory /log/hotbak/physical/20141214 has been removed.
- The directory /log/hotbak/physical/20141217 has been removed.
- The directory /log/hotbak/physical/20141221 has been removed.
- The directory /log/hotbak/physical/20141224 has been removed.
- The directory /log/hotbak/physical/20141228 has been removed.
- The directory /log/hotbak/physical/20141231 has been removed.
- The directory /log/hotbak/physical/20150104 has been removed.
- The directory /log/hotbak/physical/20150107 has been removed.
- The directory /log/hotbak/physical/20150111 has been removed.
- The directory /log/hotbak/physical/20150114 has been removed.
- The directory /log/hotbak/physical/20150121 has been removed.
- [root@SZDB ~]# ls /log/hotbak/physical
- 20150125 20150128
自动清除日期目录shell脚本的更多相关文章
- RHEL自动安装zookeeper的shell脚本
RHEL自动安装zookeeper的shell脚本 A:本脚本运行的机器,Linux RHEL6 B,C,D,...:待安装zookeeper cluster的机器, Linux RHEL6 首先在脚 ...
- Linux自动安装JDK的shell脚本
Linux自动安装JDK的shell脚本 A:本脚本运行的机器,Linux B:待安装JDK的机器, Linux 首先在脚本运行的机器A上确定可以ssh无密码登录到待安装jdk的机器B上,然后就可以在 ...
- zabbix系列(九)zabbix3.0实现自动触发zabbix-agent端shell脚本任务
zabbix实现自动触发远程脚本执行命令 Zabbix触发器(trigger)达到阀值后会有动作(action)执行:发送告警信息或执行远程命令 环境 Server:基于centos6.5 final ...
- 写个自动安装JDK的shell脚本
#!/bin/bash ################################################# # # INSTALL JDK AUTOMATICALLY # # auth ...
- 可以自动安装mysql数据库的一个shell脚本
发布:thatboy 来源:脚本学堂 [大 中 小] 分享一例shell脚本,可以实现mysql数据库的自动安装,脚本写的不错,无论是用来学习,还是生产环境中应用,都是不错的,有需要的朋友 ...
- Linux系统——shell脚本
shell脚本编程 作用:通过命令行解析的方式,自动执行设定好的程序或命令代码.(若将脚本挂到定时任务中,就会自动在非工作时间里自动触发执行程序) Shell脚本文件以“.sh”结尾 规范的Shell ...
- Linux就该这么学--Shell脚本条件语句(一)
1.条件测试语句能够让Shell脚本根据实际工作灵活调整工作内容,例如判断系统的状态后执行指定的工作,或创建指定数量的用户,批量修改用户密码,这些都可以让Shell脚本通过条件测试语句完成. if条件 ...
- CSDN中根据文章自动生成文章目录
概述 CSDN中有根据文件内容中H标签在文章中自动生成文章目录,看起来比较专业,就想把它搬到自己的博客园中.类似下图 提取JS脚本 通过浏览器开发者工具(IE/Chrome)找到产生文章目录javas ...
- shell脚本实例
备注:一些与传递给shell的参数相关的变量:$# 命令行参数的个数$? 调用命令的返回值$$ 当前进程的进程号$! 最后一个后台命令的进程号$0 命令行的第一个参数,也就是命令名$n 命令行的第n个 ...
随机推荐
- 通过实现ServletContextListener接口创建数据库连接池(C3P0方式)
使用Listener步骤 1. 定义Listener实现类 2. 在web.xml中配置(或使用Annotation) 使用C3P0方式创建数据库连接池需要添加的jar包 1.c3p0-0.9.5.j ...
- 洛谷 P4011 孤岛营救问题【bfs】
注意: 一个点可能有多把钥匙,所以把每个点有钥匙的情况状压一下 两个点之间有障碍的情况只给出了单向,存的时候记得存一下反向 b[i][j]表示当前点拥有钥匙的状态,g[x1][y1][x2][y2]表 ...
- zoj 2760 How Many Shortest Path【最大流】
不重叠最短路计数. 先弗洛伊德求一遍两两距离(其实spfa或者迪杰斯特拉会更快但是没必要懒得写),然后设dis为st最短距离,把满足a[s][u]+b[u][v]+a[v][t]==dis的边(u,v ...
- 洛谷P4114 Qtree1(树链剖分+线段树)
传送门 LCT秒天秒地用什么树剖 这题可以算是树剖的比较裸的题目了 把每一条边的权值下放到他两边的点中深度较深的那个 然后直接用树剖+线段树带进去乱搞就可以了 //minamoto #include& ...
- (3)css文本样式
本篇学习资料主要讲解: 如何用css 的样式定义方法来介绍文字的使用. 第(1)节:用css设置文本样式. 一.弄懂文本文字的制作.利用css的样式定义版面 ...
- openstack知识---hypervisor
hypervisor Hypervisor是一种运行在物理服务器和操作系统之间的中间软件层,可允许多个操作系统和应用共享一套基础物理硬件,因此也可以看作是虚拟环境中的“元”操作系统,它可以协调访问服务 ...
- IOS编译报错:objc-class-ref in AppDelegate.o之解决方案 Xcode7
Undefined symbols for architecture x86_64: "_OBJC_CLASS_$_QQApiInterface", referenced from ...
- libtool版本过新的问题
安装过程中出现: libtool: Version mismatch error. This is libtool 2.4.2, but the libtool: definition of th ...
- ftp 上传与下载
//上传 ftpmg.Upload("", DateTime.Now.ToString("yyyyMMddhhmmss")); //下载 ftpmg.Downl ...
- CentOS 6.4 linux下编译安装MySQL5.6.14
CentOS 6.4下通过yum安装的MySQL是5.1版的,比较老,所以就想通过源代码安装高版本的5.6.14. 正文: 一:卸载旧版本 使用下面的命令检查是否安装有MySQL Server rpm ...