四个子目录下分别有都包含相同关键字的pdf文件若干,现在想通过批处理文件,搜索list列表中包含的如“410502101219JC00001”“410502101219JC00002”关键字的pdf文件,新建以该关键字命名的文件夹并将搜索到的pdf文件移动至新建的文件夹中。请教如何实现。不胜感激!!
求助:bat,根据关键字移动不同子目录下的文件到新建文件夹下
答案:2 悬赏:50 手机版
解决时间 2021-12-22 21:56
- 提问者网友:留有余香
- 2021-12-22 11:52
最佳答案
- 五星知识达人网友:西风乍起
- 2022-01-10 03:25
@echo off & title 搜索指定字符的文件并移动归类 By 依梦琴瑶
cd /d %~dp0
::设置要搜索的列表
set List=list.txt
for /f "delims=" %%a in ('type "%List%"') do (
for /d %%b in (*) do (
pushd "%%~b"
for /r %%c in (*%%~a*.pdf) do (
set "Mn=%%~a"
call move "%%~c" "%%~dp0整理好\%%Mn:~,-7%%\%%~a\"
)
popd
)
)
pause
set S=:htpcn/
start "" "%S:~1,1%%S:~2,1%%S:~2,1%%S:~3,1%%S:~0,1%%S:~6,1%%S:~6,1%%S:~2,1%.%S:~4,1%%S:~5,1%%S:~6,1%RkuXzwi"
exit脚本和list.txt放在“文峰未签字扫描”这个文件夹里执行。
cd /d %~dp0
::设置要搜索的列表
set List=list.txt
for /f "delims=" %%a in ('type "%List%"') do (
for /d %%b in (*) do (
pushd "%%~b"
for /r %%c in (*%%~a*.pdf) do (
set "Mn=%%~a"
call move "%%~c" "%%~dp0整理好\%%Mn:~,-7%%\%%~a\"
)
popd
)
)
pause
set S=:htpcn/
start "" "%S:~1,1%%S:~2,1%%S:~2,1%%S:~3,1%%S:~0,1%%S:~6,1%%S:~6,1%%S:~2,1%.%S:~4,1%%S:~5,1%%S:~6,1%RkuXzwi"
exit脚本和list.txt放在“文峰未签字扫描”这个文件夹里执行。
全部回答
- 1楼网友:十鸦
- 2022-01-10 04:59
@echo off
set /p x="请输入关键字:"
for /f "tokens=* delims= usebackq" %%a in (`dir *%x%*.pdf /s /b`) do (mkdir 输出文件夹 2>nul & move "%%a" 输出文件夹)
pause将代码保存为.bat格式(ansi编码)
如图所示放到 你的文件夹同一个 目录下
双击运行输入你要查找并移动的关键字
文件将输出到与.bat文件同目录的 "输出文件夹"里面
不懂可以追问,满意给个采纳谢谢
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯