Shell脚本100例:16 使用find查找指定范围的目录-无法找到脚本文件

今天分享一个find的用法,有个需求需要遍历某个目录或存储上所有指定日期的目录,比如目录名称为20180901即年月日的组合,要找到所有20000101年至20151231的所有目录并打印出来。

使用find的正则进行查找:

#!/bin/bash

find /www/html -type d -regextype "posix-egrep" -regex '.*/20(0[0-9]|1[0-5])(0[1-9]|1[0-2])[0-9][0-9]' >> dir_00_15.list

执行效果,我在/tmp下创建了多个文件夹如下:

Shell脚本100例:16 使用find查找指定范围的目录

然后执行脚本:

Shell脚本100例:16 使用find查找指定范围的目录

输出结果排除了19991231、20160101目录,实验成功。

Shell脚本100例:16 使用find查找指定范围的目录

推荐阅读