Batch file 我们如何使用批处理文件复制文件,而生成的文件的名称可以控制?

Batch file 我们如何使用批处理文件复制文件,而生成的文件的名称可以控制?,batch-file,automation,Batch File,Automation,我在下面写了bat文件,它将文件从源文件夹复制到目标文件夹 for /l %%A in (1,1,5) do copy "C:\source\Device-DAY0-Sample0.dat" "C:\dest\Device-DAY%%A-Sample%%A.dat" 这将生成以下文件: 设备-DAY1-Sample1.dat 设备-DAY2-Sample2.dat 设备-DAY3-Sample3.dat 设备-DAY4-Sample4.dat 设备-DAY5-Sample5.dat 但是

我在下面写了
bat
文件,它将文件从
源文件夹复制到
目标文件夹

 for /l %%A in (1,1,5) do copy "C:\source\Device-DAY0-Sample0.dat" "C:\dest\Device-DAY%%A-Sample%%A.dat"
这将生成以下文件:

  • 设备-DAY1-Sample1.dat
  • 设备-DAY2-Sample2.dat
  • 设备-DAY3-Sample3.dat
  • 设备-DAY4-Sample4.dat
  • 设备-DAY5-Sample5.dat
但是,我尝试每天生成3个样本,如下所示:

  • 设备-DAY1-Sample1.dat
  • 设备-DAY1-Sample2.dat
  • 设备-DAY1-Sample3.dat
  • 设备-DAY2-Sample1.dat
  • 设备-DAY2-Sample2.dat
  • 设备-DAY2-Sample3.dat
如何改进代码?

请尝试以下方法:

@echo off
for /l %%B in (1,1,10) do (
for /l %%A in (1,1,3) do (
Copy "C:\source\Device-DAY0-Sample0.dat" "C:\dest\Device-DAY%%B-Sample%%A.dat"
)
)
pause>nul

您也可以使用Autoit。也许代码对您来说更直观。