AbstProcDo Asked: 2019-11-19 02:43:22 +0800 CST2019-11-19 02:43:22 +0800 CST 2019-11-19 02:43:22 +0800 CST 查找后缀为 org 或 md 的文件 [重复] 772 我想找到所有后缀为.mdor的文件.org find ~ -iregex ".*\.md$" find ~ -iregex ".*\.org$" 怎么可能结合起来? command-line find 2 个回答 Voted damadam 2019-11-19T03:00:29+08:002019-11-19T03:00:29+08:00 只需像此答案中所说的那样连接您的搜索: find ~ -name "*.md" -o -name "*.org" 解释 : -name会以递归方式进行搜索(如果您不想获得子目录结果,请将其删除) -ooption 表示OR运算符(即使没有.md文件,它也会执行这两个命令) ~是您要开始find执行的路径;在这里,您开始于~(所以您的用户名/home/user在哪里user) PS:如果你想使用(),你需要\像这样使用转义字符: find ~ \( -name "*.md" -o -name "*.org" \) 这两个命令都有效,但在这种情况下,第一个就足够了。 PPS:如果您想查找这些扩展名带有大写字母的文件,请使用-iname选项而不是-name选项,如下所示: find ~ -iname "*.md" -o -iname "*.org" 例如,您将能够找到名为README.MD的文件,该-name选项未显示这些文件 Best Answer Velkan 2019-11-19T03:00:03+08:002019-11-19T03:00:03+08:00 find ~ -regextype egrep -iregex ".*\.(md|org)" 查看该regextype选项的文档以查看支持的正则表达式类型。,也许其他人理解括号中的组/替代项egrep。posix-extended
只需像此答案中所说的那样连接您的搜索:
解释 :
-name
会以递归方式进行搜索(如果您不想获得子目录结果,请将其删除)-o
option 表示OR运算符(即使没有.md
文件,它也会执行这两个命令)~
是您要开始find
执行的路径;在这里,您开始于~
(所以您的用户名/home/user
在哪里user
)PS:如果你想使用
()
,你需要\
像这样使用转义字符:这两个命令都有效,但在这种情况下,第一个就足够了。
PPS:如果您想查找这些扩展名带有大写字母的文件,请使用
-iname
选项而不是-name
选项,如下所示:例如,您将能够找到名为README.MD的文件,该
-name
选项未显示这些文件查看该
regextype
选项的文档以查看支持的正则表达式类型。,也许其他人理解括号中的组/替代项egrep
。posix-extended