查找带有可选子表达式的命令正则表达式

时间:2019-04-16 11:10:27

标签: linux shell find

我有以下文件列表

file                        <-
file.2019041543764832       <-
file.2019041643764832       <-
file.2019041243764832
file.2019041143764832

我想找到所有带有file前缀并可选地带有日期20190415xxxxx20190416xxxxx的标记文件

我尝试了以下操作,但未产生任何输出。

find . -regex 'file(\.2019041(5|6)[0-9].*)?' -regextype egrep

我需要有关正确的正则表达式类型和正确的synatx的帮助,以实现此目的。

1 个答案:

答案 0 :(得分:0)

find . -regex './file\(.2019041\(5\|6\)[0-9]*\)?' -regextype egrep

或者只是

find . -regex './file\(.2019041[56][0-9]*\)?'

(使用find .时,我的find版本以./作为匹配项的前缀,因此我将其添加到了正则表达式中。)