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

如何通过终端将多目录下符合指定模式的文件复制到单个目标目录

如何通过终端将多目录下符合指定模式的文件复制到单个目标目录

这事儿用find命令配合cp就能轻松搞定,步骤很简单:

  • 第一步:先创建目标目录(如果还没建的话)
    打开终端,切换到base目录所在的上级路径,然后运行:

    mkdir target
    

    这样就生成了用来存放目标文件的target文件夹。

  • 第二步:执行查找+复制的命令
    直接运行这条命令就能把所有符合条件的文件批量复制过去:

    find base -name "*this_I_want.csv" -exec cp {} target/ \;
    

我来拆解一下这条命令的各个部分:

  • find base:告诉系统从base目录开始,递归遍历它下面的所有子目录
  • -name "*this_I_want.csv":指定要找的文件模式——所有以this_I_want.csv结尾的CSV文件,*是通配符,能匹配文件名前面的任意字符(比如你例子里的23491_、30912_这些前缀)
  • -exec cp {} target/ \;:对每一个找到的文件执行cp复制命令,{}会自动替换成当前找到的文件路径,最后用\;来标记-exec命令的结束

额外小技巧

如果担心不同目录下出现同名文件(虽然你的例子里不会,但以防万一),可以给cp加-n参数,避免覆盖已存在的文件:

find base -name "*this_I_want.csv" -exec cp -n {} target/ \;

要是想看到复制的过程(比如确认哪些文件被复制了),可以加-v参数:

find base -name "*this_I_want.csv" -exec cp -v {} target/ \;

备注:内容来源于stack exchange,提问作者KansaiRobot

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.04.21 15:08:02