求根据列表(txt),查找文件夹内对应文件名的文件,并将其复制到另一个文件夹里.
展开全部
::把下面内容复制、粘贴到一个文本文件里,另存为“文件选择复制(txt版).cmd”
@Echo 把待复制的文件名列表放在“文件列表.txt”里(每行一个文件名)。
@Echo 然后把本.CMD批处理与“文件列表.txt”两文件放在同一目录下,如桌面!。
@color 1f
@Title 文件选择复制(txt版).cmd-XP
@echo off
@Echo.
@Echo 假设目标文件夹为“D:\tmp”,原文件夹“D:\old”(无双引号),等号后面不要有多余的空格。
set yWjj=D:\三极管查询
set mbWjj=D:\tmp
if exist "%mbWjj%" (@Echo 已存在%mbWjj%) else @Echo 目标文件夹“%mbWjj%”未找到,新建!&MD "%mbWjj%"
del %mbwjj%\*.* /q &rem 先删除(/q不提示删除)!
::下面测试用,将所有“.txt”文件导出到txt文件中(“/Os”表示按文件大小排列,如名称改“/On”)
::路径有空格——必须加括号。
::Dir "%yWjj%\*.txt" /Os /B /A-D>"%CD%\文件列表.txt" &@rem 仅".txt"文件
if exist "%CD%\文件列表.txt" (goto Begin) else @Echo “文件列表.txt”未找到,退出! & goto quit
:Begin
@Echo =======开==始=======
@Echo.
::然后从txt读取“文件名”保存到内存变量(如TT1.TT2)里!等号两边不能有空格!
for /f "delims=" %%i in (文件列表.txt) do set /a m+=1 & call,set "TT%%m%%=%%i"
for /l %%i in (1,1,%m%) do ( call,echo %%i、【%%TT%%i%%】 & if defined TT%%i call,copy "%yWjj%\%%TT%%i%%" "%mbWjj%\%%TT%%i%%"
)
@Echo.
:quit
@Echo 共复制了%m%个,程序结束, 按任意键退出!
pause>nul
::
@Echo 把待复制的文件名列表放在“文件列表.txt”里(每行一个文件名)。
@Echo 然后把本.CMD批处理与“文件列表.txt”两文件放在同一目录下,如桌面!。
@color 1f
@Title 文件选择复制(txt版).cmd-XP
@echo off
@Echo.
@Echo 假设目标文件夹为“D:\tmp”,原文件夹“D:\old”(无双引号),等号后面不要有多余的空格。
set yWjj=D:\三极管查询
set mbWjj=D:\tmp
if exist "%mbWjj%" (@Echo 已存在%mbWjj%) else @Echo 目标文件夹“%mbWjj%”未找到,新建!&MD "%mbWjj%"
del %mbwjj%\*.* /q &rem 先删除(/q不提示删除)!
::下面测试用,将所有“.txt”文件导出到txt文件中(“/Os”表示按文件大小排列,如名称改“/On”)
::路径有空格——必须加括号。
::Dir "%yWjj%\*.txt" /Os /B /A-D>"%CD%\文件列表.txt" &@rem 仅".txt"文件
if exist "%CD%\文件列表.txt" (goto Begin) else @Echo “文件列表.txt”未找到,退出! & goto quit
:Begin
@Echo =======开==始=======
@Echo.
::然后从txt读取“文件名”保存到内存变量(如TT1.TT2)里!等号两边不能有空格!
for /f "delims=" %%i in (文件列表.txt) do set /a m+=1 & call,set "TT%%m%%=%%i"
for /l %%i in (1,1,%m%) do ( call,echo %%i、【%%TT%%i%%】 & if defined TT%%i call,copy "%yWjj%\%%TT%%i%%" "%mbWjj%\%%TT%%i%%"
)
@Echo.
:quit
@Echo 共复制了%m%个,程序结束, 按任意键退出!
pause>nul
::
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询