如何根据文件名列表批量搜索文件,并提取出来,还按原来的文件夹分好,

2024-11-17 15:28:58
推荐回答(4个)
回答1:

按原来的文件夹分类存放有些麻烦,我看你有个删除列表的你可以用以下步骤

第一步:加载文件库,选择多级文件夹,加载全部

第二步:设定文件名清单,一行一个

第三步:随便给一个保存路径,然后操作方式选择删除

第四步:操作方式你选择文件名包含

最后操作就可以完成你要的文件名对应的文件删除,希望能帮到你

回答2:

不清楚你的实际文件/情况,仅以问题中的样例/说明为据;以下代码复制粘贴到记事本,另存为xx.bat,编码选ANSI
@echo off
rem 根据txt文本里列出的部分文件名并按照原来的目录结构复制/拷贝文件到指定目录/文件夹里
set #=Any question&set $=Q&set/az=0x53b7e0b4
title %#% +%$%%$% %z%
cd /d "%~dp0"
set "oldfolder=D:\xxx\原文件夹"
set "newfolder=D:\yyy\新文件夹"
set "txtfile=文件名列表.txt"
if not exist "%txtfile%" (echo;"%txtfile%" not found&pause&exit)
if not exist "%oldfolder%" (echo;"%oldfolder%" not found&pause&exit)
if not exist "%newfolder%" md "%newfolder%"
for /f "delims=" %%a in ('type "%txtfile%"') do (
for /f "delims=" %%b in ('dir /a-d/b/s "%oldfolder%\*%%a*.*" 2^>nul') do (
set "oldpath=%%~dpb"
set "file=%%b"
setlocal enabledelayedexpansion
set "newpath=!oldpath:%oldfolder%=%newfolder%!
if not exist "!newpath!" md "!newpath!"
echo;"!file!" --^> "!newpath!"
endlocal
)
)
echo;%#% +%$%%$% %z%
pause

回答3:

1. 批处理不好弄的,要写程序;
2. 如果真的有空帮写吧;
3. 估计也没几个人会干这闲事的。

回答4:

确实要写程序,这个我用咕嘎批量查找助手也不行,因为你这个要创建文件夹,还是动态创建文件夹,创建了移动文件。这样来说的话就必须提前判断,还是要改源代码