找回密码
 注册
搜索
[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
查看: 28233|回复: 3

[文件操作] [已解决]批处理实现文件重命名&移动

[复制链接]
发表于 2015-2-10 11:13:04 | 显示全部楼层 |阅读模式
非常感谢大神的帮助,现在重新整理了流程,希望能有大神帮助做一个完整的批处理文件,谢谢!

下面这段代码来自@pcl_test 非常感谢,主要用来取得上层文件夹名称及文件移动
  1. @echo off
  2. setlocal enabledelayedexpansion
  3. cd /d "D:\XX\A"
  4. for /f "delims=" %%a in ('dir /s/b *.pdf') do (
  5. set "filesdir=%%~dpa"
  6. set "filesdir=!filesdir:~0,-1!"
  7. >$ echo !filesdir!
  8. for /f "delims=" %%b in ('type $') do (
  9. set "name=%%~nb"
  10. )
  11. move "%%a" "D:\999\!name!-%%~na.PDF"
  12. )
  13. del $ /f /q
  14. pause
复制代码
能否根据上面这段代码帮助在文件中间增加一段文件名:例如A对应01,B对应02,C对应03,D对应04,E对应05,F对应06.
发表于 2015-2-10 22:09:26 | 显示全部楼层
这样?
  1. @echo off & setlocal enabledelayedexpansion
  2. cd /d "D:\XX\A"
  3. set n=100
  4. for %%a in (A B C D E F G H I J K L M N O P Q R S T U V W X Y Z) do (
  5.         set /a n+=1 & set "_%%a=!n:~1!"
  6. )
  7. for /f "delims=" %%a in ('dir /s/b^|findstr /ie \\[A-Z]\.pdf') do (
  8.         for %%b in ("%%~dpa.") do (
  9.                 move "%%a" "D:\999\%%~nxb-!_%%~na!-%%~nxa"
  10.         )
  11. )
  12. pause
复制代码
 楼主| 发表于 2015-2-10 22:40:37 | 显示全部楼层
回复 2# apang


大哥非常感谢,我明天就是公司测试一下,

另外我咨询一下这里
A可以替换成 文件名 fit-up.pdf
B可以替换成weld VI.pdf
C可以替换成 stage release.pdf
E可以替换成成 MT.pdf 或者 ut.pdf 吗?

我为了说明的简洁所以用ABCD替换撸,我感觉我又做错撸。。。
发表于 2015-2-10 22:45:57 | 显示全部楼层
回复 3# sdhaozao


把那行 in (A B C D...) do 什么的替换成这个试试:
  1. for %%a in ("fit-up" "weld VI" "stage release" "MT.pdf") do (
复制代码
警告:危险操作不可还原,建议先用样本测试!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|批处理之家 ( 渝ICP备10000708号 )

GMT+8, 2026-3-18 12:11 , Processed in 0.021428 second(s), 8 queries , File On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表