|
|
发表于 2008-11-24 22:47:48
|
显示全部楼层
只要不包含&和!就可以。
假设E盘所有路径中,.pdf只是后缀名,而不可能出现在文件夹名和文件名中,那么,把如下代码放在与1.txt相同的路径下运行即可。
考虑到效率问题,生成了临时文件list.txt,请自行删除;若屏幕提示的内容与你的预期吻合,请把 echo 把 d:/pdf/%%i.pdf 移动到 "%%~dpk" 替换为 move d:/pdf/%%i.pdf "%%~dpk" (代码未经测试,请先测试后再修改):- @echo off
- echo 全盘扫描E盘下的pdf文件,请耐心等待...
- cd.>list.txt
- for /f "delims=" %%i in ('dir /a-d /b /s e:\*.pdf 2^>nul') do (echo %%i)>>list.txt
- echo.>>list.txt
- cls
- for /f "delims=" %%i in (1.txt) do (
- for /f "tokens=2 delims==-" %%j in ("%%i") do (
- for /f "delims=" %%k in ('findstr /iec:"%%j.pdf" list.txt 2^>nul') do (
- echo 把 d:/pdf/%%i.pdf 移动到 "%%~dpk"
- )
- )
- )
- pause
复制代码
————————————————————————————————————
d:/pdf/%%i.pdf 应为 d:\pdf\%%i.pdf ,本机路径用反斜杠而非斜杠,特此更正。
——namejm 2008.11.25 |
评分
-
查看全部评分
|