如何匹配“find”命令的“-name”选项中的零个或一个字符?

ksn*_*tum 2 linux find regular-expression wildcards

例如,想要匹配该目录及其子目录中以.ly或结尾的所有文件.ily。到目前为止,find . -name "*.*ly" -print这是我能得到的最接近的,但这可能会找到我不想要的文件名。

Ste*_*ris 6

您可以使用该-o选项,它是一个“或”选项。

最简单的版本是

find . -name '*.ly' -o -name '*.ily'
Run Code Online (Sandbox Code Playgroud)

这是有效的,因为-print这是默认操作。

但如果这-print只是一个例子,那么您可能需要将这两个子句组合在一起

find . \( -name '*.ly' -o -name '*.ily' \) -print
Run Code Online (Sandbox Code Playgroud)