You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

MacBook zsh中find命令正则分组匹配png/jpg文件失败问题

解决Mac下find正则分组匹配png/jpg文件的问题

正确命令1:适配BSD find的基本正则语法

Mac自带的find是BSD版本,默认使用基本正则表达式(BRE),分组括号和管道符需要转义,正确的正则写法如下:

find ./assets -regex '.*\.\(png\|jpg\)'

更简单的替代方案:不用正则分组

如果不想纠结正则语法,直接用-o(逻辑或)选项组合两个文件名匹配规则,更直观且不易出错:

find ./assets -name '*.png' -o -name '*.jpg'

问题原因说明

  1. 你之前测试的.*\.(png|jpg)是**扩展正则表达式(ERE)**的语法,但BSD find默认不支持这种写法,且没有-regextype参数(该参数是GNU find的特性),所以添加后会报错。
  2. 单独匹配.*\.png能生效,是因为这个表达式没有用到分组,属于BRE兼容的写法。

内容的提问来源于stack exchange,提问作者Alexander Pissinger

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.14 12:29:56