bat 批量查找文件拷贝:怎样从TXT文件中读取文件名查找然后拷贝,查找的文件范围在根目录和子目录中都有

2024-11-01 07:42:48
推荐回答(2个)
回答(1):

假设你的文件名集合在C:\TEST\下,程序将要拷贝到D:\BACKUP下:
@echo off
FOR /R D:\DATA %%I IN (C:\TEST\123.TXT) DO (
IF EXIST %%I COPY %%I D:\BACKUP
)

回答(2):

@echo off
for /f "delims=" %%i in (123.TXT) do (
for /f "usebackq" %%j in (`dir /a-d /b /s DATA\`) do (
if /i "%%~nxj"=="%%i.txt" (
xcopy %%j C:\Users\Administrator\Desktop
)))

不知你电脑上这些文件是什么情况,这里的条件是:123.txt和data同在一个目录下,而且在data中不能有同名文件,否则复制到另一个地方时会提示让覆盖,搜索到的文件复制到的目录这里是桌面,bat要放在123.txt和data所在目录中运行。