ksnortum Asked: 2023-05-22 06:15:06 +0800 CST2023-05-22 06:15:06 +0800 CST 2023-05-22 06:15:06 +0800 CST 如何匹配“find”命令的“-name”选项中的零个或一个字符? 772 .ly例如,要匹配该目录和以或结尾的子目录中的所有文件.ily。到目前为止,find . -name "*.*ly" -print这是我能得到的最接近的,但这可能会找到我不想要的文件名。 linux 2 个回答 Voted Best Answer Stephen Harris 2023-05-22T06:33:37+08:002023-05-22T06:33:37+08:00 您可以使用该-o选项,这是一个“或”选项。 最简单的版本是 find . -name '*.ly' -o -name '*.ily' 这是有效的,因为-print这是默认操作。 但是,如果这-print只是一个示例,那么您可能需要将这两个子句组合在一起 find . \( -name '*.ly' -o -name '*.ily' \) -print phuclv 2023-05-22T13:23:12+08:002023-05-22T13:23:12+08:00 另一种解决方案是使用正则表达式 find -regex '.*/.*\..?ly' 或者 find -regex '\./.*\..?ly' 该-regex选项匹配整个路径,因此您需要.*/在开头,或者\./如果您仅在当前文件夹中搜索
您可以使用该
-o
选项,这是一个“或”选项。最简单的版本是
这是有效的,因为
-print
这是默认操作。但是,如果这
-print
只是一个示例,那么您可能需要将这两个子句组合在一起另一种解决方案是使用正则表达式
或者
该
-regex
选项匹配整个路径,因此您需要.*/
在开头,或者\./
如果您仅在当前文件夹中搜索