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

如何在Linux中使用一条find命令查找多个指定模式的文件?

使用find命令实现多模式文件查找

针对你需要匹配多个前缀开头文件的需求,这里提供几种实用的find命令写法:

方法1:用-o(逻辑或)组合多个-name条件

这是最直观的写法,每个前缀对应一个-name规则,用-o连接,注意括号需要转义避免shell解析:

find /目标目录路径 -type f \( -name "FCL_20230116*.zip" -o -name "VET_20230116*.zip" \)
  • -type f:确保只查找文件(排除目录)
  • \( ... \):将多个条件组合为一个整体,保证逻辑或的优先级正确
  • "前缀*.zip":匹配以前缀开头、后缀为zip的文件

方法2:使用正则表达式匹配

如果前缀数量较多,用正则表达式更简洁。find默认使用emacs风格正则,也可以指定扩展正则:

扩展正则写法(推荐)

find /目标目录路径 -type f -regextype posix-extended -regex ".*/(FCL_20230116|VET_20230116).*\.zip"
  • -regextype posix-extended:启用扩展正则,无需转义|
  • .*:匹配任意长度的字符
  • .*/:因为find的正则是匹配完整文件路径,所以开头需要匹配路径部分

默认emacs正则写法

find /目标目录路径 -type f -regex ".*/\(FCL_20230116\|VET_20230116\).*\.zip"

这里需要转义(、)和|,写法稍繁琐。

结合下载场景的用法

如果要直接将找到的文件下载到本地,可搭配xargs和scp:

find /远程服务器目录 -type f \( -name "FCL_20230116*.zip" -o -name "VET_20230116*.zip" \) | xargs scp 远程用户@服务器IP:/本地保存目录

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.04 15:15:10