尝试从设置的变量中查找文件列表。然而,路径必须是具体的。
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
。