有一个文件夹,名称为“能散3%”,将该文件夹复制为多个文件夹,目标名称为“能散4%”、“能散7%”、“能散11%”等,如何批量完成

可以使用以下批处理(.bat脚本来完成这个任务。该脚本将复制名为“能散3%”的文件夹,并将其重命名为“能散4%”、“能散7%”、“能散11%”等。

bat
@echo off
setlocal enabledelayedexpansion
:: 设置原始文件夹名称
set “srcFolder=能散3%”:: 设置目标文件夹名称的模式和起始值
set “destPrefix=能散”
set “startValue=4”
set “endValue=11”
set “stepValue=3”:: 循环复制并重命名文件夹
for /l %%i in (%startValue%, %stepValue%, %endValue%) do (
set “destFolder=%destPrefix%%%i%%”
xcopy /E /I “%srcFolder%” “%destFolder%”
echo Copied “%srcFolder%” to “%destFolder%”
)echo Done.
endlocal

使用说明:

  1. 将上述代码保存为 .bat 文件,例如 copy_folders.bat
  2. 将该 .bat 文件放在包含“能散3%”文件夹的目录中。
  3. 双击运行该 .bat 文件,它将自动复制并重命名文件夹。

脚本解释:

  • @echo off:关闭命令的回显。
  • setlocal enabledelayedexpansion:启用延迟变量扩展,允许在 for 循环中使用变量。
  • srcFolder:设置原始文件夹的名称。
  • destPrefix:设置目标文件夹名称的前缀。
  • startValueendValue 和 stepValue:设置循环的起始值、结束值和步长。
  • for /l %%i in (%startValue%, %stepValue%, %endValue%) do:开始循环,从 startValue 开始,每次增加 stepValue,直到 endValue
  • xcopy /E /I "%srcFolder%" "%destFolder%":使用 xcopy 命令复制文件夹及其内容。/E 参数表示复制子文件夹和文件,/I 参数表示如果目标不存在,则将其视为目录。
  • echo Copied "%srcFolder%" to "%destFolder%":显示复制的文件夹名称。

确保在运行脚本之前,原始文件夹“能散3%”已经存在于脚本所在的目录中。