regex - 使用 find 和正则表达式查找以月份数字开头的文件名
问题描述
我正在尝试使用 find 和正则表达式来查找所有以数字开头的文件,该数字将在一个月中的一天( 01 .. 31 )范围内。
这不起作用
find . -type f -regex '[0-3][0-9]*'
将前两位数字限制在 1..31 范围内的正则表达式是什么,但如果日期小于十,则限制为两位数字( 01, 02.. )等等,并与 find 命令一起使用?
我尝试了很多东西,查看了其他 stackoverflow 文章,但其他文章中没有提到任何解决方案。
解决方案
正则表达式不适合表达这样的数字范围。您需要将其分解并分别匹配每个模式,即。以和开头0
_1
2
3
例如:
^(0[1-9]|[12][0-9]|3[01])
推荐阅读
- c++ - c++ 让一个类知道另一个对象
- html - ROS Kinetic - 使用 roslaunch 运行启动文件时出错
- javascript - 如何从 landsat 8 表面反射率集合中删除具有特定 WRS_PATH 和 WRS_ROW 的图像?
- reactjs - React Hooks 抽屉菜单不显示 CSS 过渡
- vue.js - Vue + Vuetify 性能
- laravel - Laravel 5.8 多对多关系子关系使用外键不起作用
- kubernetes - 无法使用 YAML 配置在 GoCD Kubernetes 中获取 ENV 变量
- php - 将 PHP 与 LDAP 一起使用会将所有结果返回到一条连接线上
- qt - 使用带有数据的 Qt QImage 颜色通道正在发生变化,我不知道为什么
- asp.net - 如何使用我的 vb.net 代码发送电子邮件?