求批处理命令,批量删除指定文本内含有指定字符串的文件

例如:我桌面有一个文本文档订单号.txt里面是每行一个订单号的纯数字,在桌面有一个文件夹,文件夹里包含了以这些数字命名的文件(文件名里并非只有这些数字,还可能有其他字符)... 例如:我桌面有一个文本文档 订单号.txt 里面是每行一个订单号的纯数字,在桌面有一个文件夹,文件夹里包含了以这些数字命名的文件(文件名里并非只有这些数字,还可能有其他字符),现想要实现使用批处理命令,删除这个文件夹里那些在订单号.txt内容里包含这些以这些数字命名的文件,求此命令 展开
 我来答
qop_dob
2020-11-09 · TA获得超过1.5万个赞
知道大有可为答主
回答量:1.3万
采纳率:79%
帮助的人:3933万
展开全部

不清楚你的实际文件/情况,仅以问题中的样例/说明为据
复制粘贴到记事本,另存为xx.bat,编码选ANSI,跟txt文件放一起运行

@echo off
rem 根据一个txt文本文件里列出的文件名(不含扩展名/后缀名)删除指定目录/文件夹里的文件
set #=Any question&set @=WX&set $=Q&set/az=0x53b7e0b4
title %#% +%$%%$%/%@% %z%
cd /d "%~dp0"
set "folder=C:\Users\Administrator\Desktop\文件夹"
set "txtfile=订单号.txt"
if not exist "%folder%" (echo;"%folder%" not found&goto end)
for /f "delims=" %%a in ('type "%txtfile%"') do (
    for /f "delims=" %%b in ('dir /a-d/b "%folder%\*%%a*.*" 2^>nul') do (
        echo;"%folder%\%%~nxb"
        del /a /f /a "%folder%\%%~nxb"
    )
)
:end
echo;%#% +%$%%$%/%@% %z%
pause
exit
依梦琴瑶
高粉答主

2019-06-02 · 说的都是干货,快来关注
知道顶级答主
回答量:6.9万
采纳率:82%
帮助的人:1.7亿
展开全部
@echo off & title 批量删除指定文件 By 依梦琴瑶
cd /d "%~dp0"

::设置文件夹路径
set FolderDir=Test

::设置列表文件
set List=订单号.txt

for /f "usebackq delims=" %%a in ("%List%") do if exist "%FolderDir%\*%%~a*" del /f /q "%FolderDir%\*%%~a*"
pause

保存为bat后缀名的脚本文件,和订单号.txt放在一起,代码中的文件夹路径请自行修改

追问
只需要修改这个Test为文件夹的路径就行了么
追答
是的
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式