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

如何在CMD中通过for循环将指定.py文件批量复制到多目录?

当然可以!用CMD实现批量复制的方案

完全能用for循环+copy命令搞定这个需求,我给你整理了两种实用的写法,适配不同场景:

方法一:按数字序列精准复制(适合确定是1_patient到30_patient的情况)

直接通过数字循环生成目标目录名,命令如下:

for /L %i in (1,1,30) do copy "D:\Getting_Started_PyCharm\pyradiomics\Export_Excel.py" "D:\Getting_Started_PyCharm\pyradiomics\NRRD\%i_patient\"

命令解释:

  • /L:指定这是数字序列循环,(1,1,30) 代表从1开始,每次递增1,直到30停止
  • %i:循环变量,每次迭代会替换成当前的数字(1到30),自动拼接成1_patient、2_patient这类目录名
  • 引号:给路径加引号是为了避免路径中出现空格时命令报错,建议养成这个习惯

方法二:按目录名通配符复制(更灵活的场景)

如果后续目录数量有变化,或者想匹配所有*_patient格式的子目录,可以用通配符遍历:

for /D %d in ("D:\Getting_Started_PyCharm\pyradiomics\NRRD\*_patient") do copy "D:\Getting_Started_PyCharm\pyradiomics\Export_Excel.py" "%d\"

命令解释:

  • /D:表示只遍历目录,不会处理文件
  • "*_patient":通配符规则,匹配NRRD文件夹下所有以_patient结尾的子目录
  • %d:循环变量,每次迭代代表一个匹配到的目标目录的完整路径,无需手动指定数字范围

几个实用的注意事项

  • 若你是把命令写到**批处理脚本(.bat文件)**里执行,记得把循环变量前的%改成%%,比如for /L %%i in (1,1,30)...
  • 要是想自动覆盖目标目录里的同名文件(不弹出确认提示),可以给copy命令加/Y参数,示例:copy /Y "源文件路径" "目标路径"
  • 执行前先确认源文件路径和目标目录路径是否正确,避免出现“找不到文件/目录”的报错

内容的提问来源于stack exchange,提问作者Tommaso Di Noto

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.25 07:02:06