使用正则表达式和特定路径查找

使用正则表达式和特定路径查找

尝试从设置的变量中查找文件列表。然而,路径必须是具体的。

filename=part-of-filename

不起作用:

find $HOME -regextype posix-extended -type f -regex "$filename-[[:digit:]]{4}-connect\.xml"

也不起作用:

find $HOME -regextype posix-extended -type f -regex "$filename-[[:digit:]]{4}-connect\.xml"

有效,但发现太多。为什么它强迫我使用“.*/”? $HOME 在这里被完全忽略。

find $HOME -regextype posix-extended -type f -regex ".*/$filename-[[:digit:]]{4}-connect\.xml"

答案1

为什么它强迫我使用“ .*/”?

find文档:

-正则表达式图案
文件名与正则表达式模式匹配。这是一场比赛在整个路径上,不是搜索。例如,要匹配名为 的文件./fubar3,可以使用正则表达式.*bar.or .*b.*3,但不能使用f.*r3

相关内容