本人碰到模糊目录移除,小记一下

1:准确目录情况     2:模糊目录情况

先来介绍准备目录情况

本人在网上找到的demo, 目录结构(在/root/zlogs)

脚本文件b.sh

#!/bin/bash
#移除模糊目录下的日期文件夹 RemoveDir=/root/zlogs
dt=`date +%Y-%m-%d -d "7 day ago"` for subdir in `ls $RemoveDir`;
do
if [ "${subdir}" \< "${dt}" ];
then
rm -rf $RemoveDir/$subdir >/dev/null
echo "The directory(date) $RemoveDir/$subdir has been removed."
fi
done

模糊目录, 结构/root/tlogs/*/yyyy-MM-dd

脚本文件a.sh

#!/bin/bash
#移除模糊目录下的日期文件夹 RemoveDir=/root/tlogs/*
dt=`date +%Y-%m-%d -d "7 day ago"` for subdir in `ls $RemoveDir`;
do
if [ "${subdir}" \< "${dt}" ];
then
#此段脚本判断日期是否合法
if echo $subdir | grep -Eq "[0-9]{4}-[0-9]{2}-[0-9]{2}" && date -d $subdir +%Y%m%d > /dev/null 2>&1
then :
else
echo "The directory(device) $subdir don't remove."
#echo "输入的日期格式不正确,应为yyyy-mm-dd";
continue;
fi
#删除目录 有错误不显示
rm -rf $RemoveDir/$subdir >/dev/null
echo "The directory(date) $RemoveDir/$subdir has been removed."
fi
done

Linux 清除N天前的 日期文件夹(yyyy-MM-dd)的更多相关文章

  1. Excel日期格式单元格写成yyyy.MM.dd格式将无法读取到DataTable

    最近在改公司的订单系统,遇到了一个奇怪的问题.C#程序需要从Excel文件中将数据全部读取到DataTable,其中Excel文件的第一列是日期格式yyyy/MM/dd,而这一列中大部分的单元格都是按 ...

  2. 让用户输入一个日期字符串,将其转换成日期格式, 格式是(yyyy/MM/dd,yyyyMMdd,yyyy-MM-dd)中的一种, 任何一种转换成功都可以; 如果所有的都无法转换,输出日期格式非法。

    第三种方法 while(true) {             Date d;        System.out.println("正在进行第一次匹配,请稍后~—~");     ...

  3. Linux下查看磁盘剩余空间和文件夹大小

    1. du -sh 查看当前文件夹大小 2. du -sh * | sort -n 列出当前文件夹下的所有文件夹及其大小,并按照文件夹大小排序 du - sh *  //查看当前文件夹下所有文件的大小 ...

  4. linux命令(13) 删除指定文件夹下后缀名相同的文件

    方法一: find 目录 -name "*.abc" | xargs rm命令有点危险,可以先执行前半段,看看是不是你要删除的文件, 然后再整条执行 方法二:find . -nam ...

  5. 两台linux主机使用unison + inotify实现web文件夹同步

    两台服务器同步数据 unison 是一款跨平台的文件同步对象,不仅支撑本地对本地同步,也支持通过SSH,RSH和Socket 等网络协议进行同步. unison 支持双向同步,你可以同A同步到B ,也 ...

  6. VS 清除编译产生的临时文件、文件夹

    VS编译过程中会产生一些临时文件,通过以下脚本可清除 @echo off for /r %%i in (*.sdf,*.ncb,*.suo,*.exp,*.user,*.aps,*.idb,*.dep ...

  7. linux curl命令如何上传本地文件夹和下载文件

    本地有一个文件夹为my_dir,里面有四个文件,分别是test1.txt,user_account,tools_user,plans 要把这个my_dir文件夹传到ftp 192.168.8.251 ...

  8. Linux下Mysql 不能访问新数据文件夹问题

    新挂载的盘,打算将数据文件夹配置到 /data/mysql,却无法启动mysqld. 除了将目录授权给mysql用户和组以外 chown -R mysql:mysql /data/mysql 太需要将 ...

  9. Linux新建环境变量快速切换到文件夹(export)

    如果有一个文件夹目录很深/home/user/aaa/bbb/ccc/ddd/eee/fff/ggg,但是经常要跳转到这个文件夹.一个简单的办法就是给这个文件夹建立一个类似$PATH那样的环境变量,如 ...

随机推荐

  1. UVA-11383 Golden Tiger Claw (KM算法)

    题目大意:一张可行二分图的权值以邻接矩阵的形式给了出来,现在要找每一个节点的可行顶标,使顶标和最小. 题目分析:直接用KM算法,结束后顶标之和最小...模板题. 代码如下: # include< ...

  2. easyui combotree 异步树 前端写法js

    简要说下使用场景: combotree下拉框第一次加载时,请求一个接口,页面上展示顶层节点们(可以理解为最顶层的节点,比如所有的一级公司): 当点击其中一个节点前面的小三角展开时,再次请求服务器接口( ...

  3. 201621123010《Java程序设计》第5周学习总结

    1. 本周学习总结 1.1 写出你认为本周学习中比较重要的知识点关键词 接口.面向接口编程 interface.implements has-a 关系 Comparable.Comparator 1. ...

  4. New Concept English Two 9 22

    The video can be found on the website. $课文20 独坐孤舟 190. Fishing is my favourite sport. 钓鱼是我特别喜爱的一项运动. ...

  5. node 使用范围 和 node的优势 (为什么 创业公司 选择的不是 java php ruby 等)

    链接 一些国外大公司 范围: 第一: 希望合并后台多个接口 成为一个接口,  或者频繁改动接口 相关, 比如数据 和数据格式之类,  后台难以配合, 这里可以使用node作为后台的应用层调用其他接口 ...

  6. Mysql查询正在运行的事务以及杀掉它

    查询 正在执行的事务:SELECT * FROM information_schema.INNODB_TRX 根据这个事务的线程ID(trx_mysql_thread_id): 可以使用mysql命令 ...

  7. OPENQUERY用法以及使用需要注意的地方

    对给定的链接服务器执行指定的传递查询.该服务器是 OLE DB 数据源.OPENQUERY 可以在查询的 FROM 子句中引用,就好象它是一个表名.OPENQUERY 也可以作为 INSERT.UPD ...

  8. oracle Union 中 ORA-12704:字符集不匹配问题的解决 .

    在使用Union all连接时,若A集合中某列为nvarchar2或nvarchar类型,而B集合中无此列,用‘ ’ 来代替是会报字符集不匹配,解决方法有两种,见下面的示例 例: select '中国 ...

  9. Swift学习——A Swift Tour 协议和扩展

    版权声明:本文为博主原创文章,未经博主同意不得转载. https://blog.csdn.net/zhenyu5211314/article/details/28854395 Protocols an ...

  10. 为已编译的DLL附带强命名

    在我们开发的过程中,会经常调用其他人写好的DLL类库,由于种种的原因,不管是公司规定,还是个人习惯等等的原因,有时候需要调用各个类库直接邀请必须强命名. 但是我们临时也无法找到源代码进行重新编译等事情 ...