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

[文件操作] [分享]批处理重命名子文件夹的图片并依次编号

[复制链接]
发表于 2019-12-2 13:26:41 | 显示全部楼层 |阅读模式
【问题】
把一个文件夹里的全部子文件夹里的图片命名按001排下去
百度上搜了,只能每个子文件夹里的图片排序,不能全部子文件夹的图片排序

【代码】
  1. @echo off
  2. setlocal enabledelayedexpansion
  3. set FileNum=1000
  4. for /f "delims=" %%a in ('dir /b /s /a-d *.jpg') do (
  5.     set /a FileNum+=1
  6.     ren "%%a" "!FileNum:~1!%%~xa"
  7. )
复制代码
 楼主| 发表于 2019-12-2 13:38:39 | 显示全部楼层
每个子文件夹都从001开始重新编号.bat
  1. @echo off
  2. setlocal enabledelayedexpansion
  3. for /f "delims=" %%a in ('dir /b /s /ad') do (
  4.     pushd "%%a"
  5.     echo 正在处理子文件夹 %%a
  6.     set /a FileNum=1000
  7.     for /f "delims=" %%b in ('dir /b /s /a-d *.jpg') do (
  8.         set /a FileNum+=1
  9.         ren "%%b" "!FileNum:~1!%%~xb"
  10.     )
  11.     popd
  12. )
复制代码
 楼主| 发表于 2019-12-4 11:23:47 | 显示全部楼层
回复 1# Batcher

【问题补充1】
1、测试
2、测试
...
10、测试
11、测试
12、测试
他从10开始算001了
我想就这1开始文件夹里的图片从001开始

【代码】
  1. @echo off
  2. setlocal enabledelayedexpansion
  3. set FileNum=1000
  4. for /l %%a in (1,1,12) do (
  5.     if exist "%%a、*" (
  6.         pushd "%%a、*"
  7.         echo 正在处理子文件夹 !cd!
  8.         for /f "delims=" %%b in ('dir /b /s /a-d *.jpg') do (
  9.             set /a FileNum+=1
  10.             ren "%%b" "!FileNum:~1!%%~xb"
  11.         )
  12.         popd
  13.     )
  14. )
复制代码
发表于 2019-12-5 23:43:51 | 显示全部楼层
回复 3# Batcher


    怎么运行不了?
 楼主| 发表于 2019-12-6 10:19:26 | 显示全部楼层
回复 4# luckcsz


请参考Q-01的方法:
https://mp.weixin.qq.com/s/6lbb97qUOs1sTyKJfN0ZEQ
发表于 2019-12-21 10:26:29 | 显示全部楼层
回复 3# Batcher

其中的  !FileNum:~1! 不是截取字符嘛 怎么在这里面变成自动编号字符呢

望指教....
 楼主| 发表于 2019-12-21 11:31:04 | 显示全部楼层
回复 6# kswdiy


    因为第3行定义了FileNum的值是从1000开始,每次执行第9行就会加1
发表于 2019-12-21 15:20:47 | 显示全部楼层
回复 7# Batcher


    但是我测试显示 每次从001 开始3位数 这么怎么回事 有点搞不清楚

怎么不是从1001 开始呢??
 楼主| 发表于 2019-12-22 21:58:35 | 显示全部楼层
回复 8# kswdiy


你自己不是已经说了截取字符嘛
1001截取之后是001
1002截取之后是002
...
发表于 2019-12-23 08:54:57 | 显示全部楼层
回复 9# Batcher


    对哦 我驴了   对不住 哈哈哈  闹笑话的

截取字符这个代码还是没灵活记脑子。。。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-3-19 13:32 , Processed in 0.028660 second(s), 8 queries , File On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

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