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

[文件操作] 批处理如何将移动文件夹修改成移动指定格式的文件?

如下代码,想将代码中的移动文件夹改成移动pdf文件,自己改来改去还是不行,不知道是哪里不对 :'( ..
  1. @echo off & title
  2. color 0a & cd /d %~dp0
  3. ::设置文件最终保存路径,末尾无需添加斜杆
  4. set SavDir=E:123
  5. ::设置文件夹列表文件
  6. set List=文本.txt
  7. ::设置日志文件
  8. set Log=操作日志.log
  9. echo 正在执行搜索、移动中,请耐心等待。。。
  10. (for /f "delims=" %%a in ('type "%List%"') do (
  11.     for /r /d %%b in ("%%~a*") do (
  12.         if "%%~nxb"=="%%~a" (
  13.             set L=1
  14.             xcopy /y /s /e /h "%%~b" "%SavDir%\%%~nxb\" >nul 2>nul && (
  15.                 rd /s /q "%%~b" >nul 2>nul && (
  16.                     echo %%~a : 移动成功。(源路径 "%%~b")
  17.                 ) || (
  18.                     echo %%~a : 拷贝成功,但源文件夹无法正常删除。(源路径 "%%~b")
  19.                 )
  20.             ) || (
  21.                 echo %%~a : 移动失败。(源路径 "%%~b")
  22.             )
  23.         )
  24.     )
  25. ))>"%log%"
  26. if not defined L echo 未找到列表文件中列出的文件夹。>"%log%"
  27. echo, & echo 完成,请按任意键退出。
  28. pause>nul & exit
复制代码

  1. xcopy d:\abc\*.pdf e:\def\ /e/k/c/y/s
复制代码
参数你参考 xcopy /?
目的,学习批处理

TOP

回复 2# hlzj88
具体思路如下:
1.根据文本中的记录(一行一件)在批处理所在目录下搜索文件
2.将搜索到的文件剪切移动到指定的文件夹,如:D:\123(注:可能会存在跨区的问题)
3.执行完后生成日志,显示哪些移动成功,哪些移动失败
4.如果出现重名文件则根据移动的先后顺序在文件名后面加上-2 -3 .....
5.文件格式为pdf 和 tiff
求具体代码 收起

TOP

返回列表