|
- @echo off
- setlocal enabledelayedexpansion
- :: 设置源目录和目标目录
- set "sourceRoot=C:"
- set "targetRoot=D:\newfolder"
- :: 设置包含文件路径的txt文件
- set "listFile=filelist.txt"
- :: 检查txt文件是否存在
- if not exist "%listFile%" (
- echo 错误:文件列表 %listFile% 不存在。
- goto :eof
- )
- :: 读取txt文件并复制文件
- for /f "usebackq delims=" %%a in ("%listFile%") do (
- set "sourcePath=%%a"
- set "targetPath=!sourcePath:%sourceRoot%=%targetRoot%!"
-
- :: 创建目标目录(如果不存在)
- if not exist "!targetPath:~0,-1!" mkdir "!targetPath:~0,-1!"
-
- :: 复制文件
- echo 正在复制 "!sourcePath!" 到 "!targetPath!"
- copy "!sourcePath!" "!targetPath!" /Y
- )
- echo 复制完成。
- endlocal
复制代码 |
|