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

[文件操作] [已解决]批处理如何批量在文件名后添加数字序号/递增数字?

[复制链接]
发表于 2012-9-4 16:52:45 | 显示全部楼层 |阅读模式
本帖最后由 pcl_test 于 2017-6-5 09:40 编辑
  1. @echo off & setlocal enabledelayedexpansion
  2. set "num=1"
  3. for /f "tokens=* delims=" %%i in ('dir /a-d /b /s *.txt') do (
  4.     ren "%%i" "!num!.txt"
  5.     set /a num+=1
  6. )
  7. pause
复制代码
我写的这个达不到我的要求.
我最终需要 改成:  原文件名_num.txt . 我不太清楚怎么把源文件名保留起来.

评分

参与人数 1PB +2 收起 理由
Batcher + 2 感谢给帖子标题标注[已解决]字样

查看全部评分

 楼主| 发表于 2012-9-4 17:08:36 | 显示全部楼层
另外,我还有个需求, 见代码:
 楼主| 发表于 2012-9-4 17:09:02 | 显示全部楼层
  1. @echo off & setlocal enabledelayedexpansion
  2. set "num=0"
  3. rem 初始化num, 已改名的文件,我们会用 _vvv 来标记.
  4. for /f "tokens=* delims=" %%i in ('dir /a-d /b /s *_vvv.txt') do (
  5.     set /a num+=1
  6. )

  7. rem 修改未改名的文件为 已改名文件的总数 + 1
  8. for /f "tokens=* delims=" %%i in ('dir /a-d /b /s *.txt && !*_vvv.txt') do (
  9.     ren "%%i" "!num!_vvv.txt"
  10.     set /a num+=1
  11. )
  12. pause
复制代码
由于我不知道我的意思用bat怎么表达, 所以我写的是伪代码. 相信你们能明白.
*.txt && !*_vvv.txt 的意思是 是*.txt 并且要排除 *_vvv.txt
发表于 2012-9-4 18:27:52 | 显示全部楼层
  1. @echo off
  2. for /f "delims=" %%a in ('dir /a-d/b/s *_vvv.txt 2^>nul') do set/a n+=1
  3. for /f "delims=" %%a in ('dir /a-d/b/s *.txt^|findstr /iev "_vvv.txt"') do (
  4.   set "FPath=%%a"&set "FName=%%~na"
  5.   set/a n+=1
  6.   setlocal enabledelayedexpansion
  7.   ren "!FPath!" "!FName!_!n!_vvv.txt"
  8.   endlocal
  9. )
复制代码

评分

参与人数 1技术 +1 收起 理由
Batcher + 1 乐于助人

查看全部评分

 楼主| 发表于 2012-9-4 21:43:01 | 显示全部楼层
非常感谢apang.
测试无误.
发表于 2013-10-18 01:39:59 | 显示全部楼层
四楼的老师,你好

如果把当前文件夹下(最好的数字以四位数形式显示,如0001):
jpg格式文件,批量更改为,图片_0001,图片_0002,如果有100张,就是图片_0010;
gif格式文件,批量更改为,动画_0001,动画_0002,如果有100张,就是动画_0010;
txt格式文件,批量更改为,文本_0001,文本_0002,如果有100个,就是文本_0010;
doc格式文件,批量更改为,文档_0001,文档_0002,如果有100个,就是文档_0010;
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-3-19 01:25 , Processed in 0.018458 second(s), 8 queries , File On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

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