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

使用find命令regex选项查找.csv文件无结果的问题求助

解决find命令正则查找.csv文件无效的问题

问题根源

find的-regex参数是匹配完整文件路径,而非仅文件名,且不同正则类型支持的语法有差异:

  • 命令find . -regextype sed -regex '.csv$':仅匹配路径以.csv结尾,但实际文件路径是./xxx.csv,因此匹配不到
  • 命令find . -regextype sed -regex '(?<=/)(.*?).csv$':(?<=/)属于PCRE风格的正向预查语法,sed正则不支持该特性

正确正则写法

针对sed正则类型,要匹配完整路径中以.csv结尾的文件,可使用:

find . -regextype sed -regex '.*/[^/]*\.csv$'

各部分解释:

  • .*/:匹配路径中的目录前缀(比如./)
  • [^/]*:匹配不含斜杠的文件名主体
  • \.csv$:匹配以.csv结尾的文件名(.需转义,否则会匹配任意字符)

也可以换用posix-extended正则类型简化写法:

find . -regextype posix-extended -regex '.*/.*\.csv$'

测试结果

用你当前目录的文件测试,上述命令会返回所有.csv文件:

  • ./bingoXandr.csv
  • ./Campaigns (1).csv
  • ./Campaigns.csv
  • ./catalogue.csv

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.06 06:55:57