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

[文件操作] [分享]批处理按照原有的数字顺序重命名文件

[复制链接]
发表于 2021-12-18 19:32:07 | 显示全部楼层 |阅读模式
【问题描述】



批处理运行之后  重命名 不是按照这个顺序来的  而是1 、 10、11、2、20这样的
  1. @echo off & title 文件重命名为序号
  2. set Ext=*.jpg,*.pdf
  3. for /r /d %%a in (*) do (
  4.     pushd "%%~a"
  5.     call set Num=1000
  6.     for /f "delims=" %%i in ('dir /a-d/b %Ext%') do (
  7.         call set /a Num+=1
  8.         call ren "%%~i" "%%Num:~1%%%%~xi"
  9.     )
  10.     popd
  11. )
复制代码
 楼主| 发表于 2021-12-18 19:32:22 | 显示全部楼层
【解决方案】
  1. @echo off
  2. setlocal enabledelayedexpansion
  3. cd /d "%~dp0"
  4. for /r /d %%a in (*) do (
  5.     pushd "%%~a"
  6.     for /f "delims=" %%i in ('dir /b /a-d *.pdf *.jpg') do (
  7.         for /f "tokens=1* delims=、" %%j in ("000%%i") do (
  8.         set "NewName=%%j"
  9.         set "NewName=!NewName:~-4!%%~xi"
  10.             ren "%%i" "!NewName!"
  11.         )
  12.     )
  13.     popd
  14. )
复制代码
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-3-20 15:13 , Processed in 0.026544 second(s), 8 queries , File On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

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