Answers:
如果您有GNU find,则可以使用其他正则表达式类型:
find . -regextype sed -regex '.*myfile[0-9]\{1,2\}'
根据GNU的说法,默认情况下find
使用绝望的 Emacs正则表达式语法 -Emacs支持\{from,to\}
语法,但至少GNU find
不支持该语法。
奇怪的是,参考手册没有包含有关sed
正则表达式语法的部分,因此谁知道它的哪些部分受支持。
sed
像ed
似乎是一个别名posix-basic
,所以应该与POSIX兼容BRE(虽然支持一些类似的扩展\+
)。它与GNU不兼容,sed
例如,它[\n]
匹配换行符而不是反斜杠,或者n
是POSIX要求的。又见-regextype posix-extended
了POSIX ERES(所以.*myfile[0-9]{1,2}
),也有类似的扩展\s
或\<
-regextype egrep
它,似乎可以避免反斜杠。
-iname
(和-name
)使用不具有此语法的globs。