[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[文件操作] 批处理怎样查询查询含有列表123.txt里面的关键字的xml文件并复制到固定的盘?

求大神帮忙写一个批处理:查询查询含有列表123.txt里面的关键字的xml文件并复制到固定的路径,123.txt面保存的是240个序列号

回复 2# Batcher

大神你好,请问findstr /m /c:"%%i" *.xml这指的是从C盘搜索含有文本内列表的关键字的xml文件吗?另外我的123.txt文本里面的序列号需要排序标识吗?
我稍微修改了一下,但是无法运行,请指教。注:需要搜寻的文件在这个目录下D:\VHE LOG\,123.txt也在这个D:\VHE LOG\目录下

@echo off
for /f "delims=" %%i in ('type "123.txt"') do (
    for /f "delims=" %%j in ('findstr /m /d:"%%i" *.xml') do (
        copy /y "%%j" "D:\VHE LOG\BACKUP\"
    )
)
study

TOP

回复 3# zaqmlp


    你的有病毒,你妹的,害我 ,我举报你
study

TOP

回复 8# WHY

我的电脑运行他的脚本后出现了感染性病毒,一直生成了很多垃圾文件,不仅仅是那个mshta而已
study

TOP

回复 8# WHY


    你可以就这个问题帮忙给个建议吗,谢谢
study

TOP

回复 5# Batcher


    您好,您给的代码执行不成功呢,是否因为我的TXT文本里面是按列排序的160个序列号太多了。我对你的代码的理解是,将文本123.txt的值赋值给%%I,然后在文件夹内循环查找带有%%I的关键字的xml文件赋值给%%J,最后将%%J copy到BACKUP文件夹内。
study

TOP

回复 2# Batcher

您好,我稍微修改了下,现在已经可以运行,但是现在又面临一个新的问题,就是里面有很多重复的文件,只是时间不一样而已,可以删除重复多余的文件只留一个吗?

    @echo off
cd /d "D:\VHE LOG\"
for /f "tokens=*" %%i in ('type "123.txt"') do (
    for /f "delims=" %%j in ('dir /a-d /b /s ^| findstr "%%i"') do (
        copy "%%j" "D:\VHE LOG\BACKUP\"
    )
)
study

TOP

回复 13# Batcher


    试过了,不是完全重名的,不会覆盖。文件名后缀是日期,前缀一致时间不同视为重复,这种覆盖不了吧。列子:FtsRes_VHE-SFT1_ZSR515_20190409175643437_20194995643472.xml和FtsRes_VHE-SFT1_515_20190409181422428_201949101422492视为重复。这种请问怎么覆盖呢?有什么好的建议吗?
study

TOP

回复 15# Batcher


    除去20190409175643437_20194995643472前面的都算前缀,前缀一致视为重复
study

TOP

回复 17# Batcher


    不好意思,漏写了,这种视为不重复。FtsRes_VHE-SFT1_ZSR515_20190409175643437_20194995643473.xml和FtsRes_VHE-SFT1_ZSR515_20190409175653537_20194995653573.xml视为重复
study

TOP

回复 19# Batcher


    Thanks,大神
study

TOP

返回列表