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

[文本处理] 批处理如何在文件名中的原数字前补0/补零/加0统一将长度扩充到指定位数

[复制链接]
发表于 2016-10-26 15:36:47 | 显示全部楼层 |阅读模式
本帖最后由 pcl_test 于 2016-11-21 23:08 编辑

请问怎么把文件名的数字增加为5位
我有个文件夹里面有很多个jpg格式的文件,编号是1.jpg 2.jpg 3.jpg … 101.jpg  这种
我现在想批处理成 00001.jpg 00002.jpg 00003.jpg … 00101.jpg
就是不满5位的前面增加0到5位

每次遇到问题到这里来都可以解决,真的很感谢!
再次先谢谢了!

评分

参与人数 1PB -3 收起 理由
pcl_test -3 发帖前先使用论坛搜索

查看全部评分

发表于 2016-10-26 15:47:30 | 显示全部楼层
回复 1# 398832385


把批处理文件保存在 jpg 文件所在目录并双击运行
  1. @echo off & setlocal enabledelayedexpansion

  2. for %%a in (*.jpg) do (
  3.     set "filename=0000%%~na"
  4.     ren "%%~a" "!filename:~-5!.jpg"
  5. )

  6. pause

复制代码

评分

参与人数 1PB +6 收起 理由
523066680 + 6 主要是上班划水,随便写点什么

查看全部评分

发表于 2016-10-26 15:58:06 | 显示全部楼层
当表情标签   无法被显示的时候

在表情预览图上面右键-复制图片地址,粘贴,外围加 img 标签

评分

参与人数 2技术 +2 收起 理由
回家路上 + 1 666[img]http://www.bathome.net/images/sm
aa77dd@163.com + 1 [img]http://bbs.bathome.net/images/smili

查看全部评分

 楼主| 发表于 2016-10-26 16:02:32 | 显示全部楼层
回复 2# aa77dd@163.com


   非常感谢! 在论坛搜了下没搜到,可能是关键词不对,这个可以用OK了!感谢!
发表于 2016-10-26 17:12:43 | 显示全部楼层
  1. powershell -c "dir *[0-9].jpg|?{!$_.PSIsContainer}|%%{ren $_ ([regex]::Replace($_.name, '\d+(?=\.[^\.]+$)', {param($a);'{0:d5}' -f [int]$a.value}))}"
  2. pause
复制代码
 楼主| 发表于 2016-10-27 20:02:18 | 显示全部楼层
回复 2# aa77dd@163.com


    这个怎么才能对子文件夹也有效????
 楼主| 发表于 2016-10-27 20:02:57 | 显示全部楼层
回复 5# pcl_test


    版主,您发的这个怎么才能对子文件夹也生效呢?
 楼主| 发表于 2016-10-27 20:06:13 | 显示全部楼层
版主发的我用了,非常感谢!但是在我的机器上好像比2楼发的那个慢些,我的是WIN10的系统
发表于 2016-10-27 22:40:02 | 显示全部楼层
本帖最后由 pcl_test 于 2016-11-3 15:08 编辑

回复 7# 398832385
  1. dir /a-d/b/s *.jpg|powershell -c "$input|?{$_ -match '\d+\.jpg$'}|%%{ren $_ ([regex]::Replace(($_ -replace '^.+\\',''), '\d+(?=\.[^\.]+$)', {param($a);'{0:d5}' -f [int]$a.value}))}"
  2. pause
复制代码
 楼主| 发表于 2016-10-28 14:13:51 | 显示全部楼层
回复 9# pcl_test


  貌似有点问题··
  我的系统是WIN10,以管理员权限运行,然后是如下效果:

评分

参与人数 1PB -4 收起 理由
pcl_test -4 能用文字说明清楚的勿发图片

查看全部评分

 楼主| 发表于 2016-10-29 20:03:56 | 显示全部楼层
本帖最后由 398832385 于 2016-10-29 20:07 编辑

回复 9# pcl_test


    简单点说就是无效...子文件夹里的jpg只改了一部分,然后就弹出错误提示
发表于 2016-10-30 11:05:33 | 显示全部楼层
  1. @echo off & setlocal enabledelayedexpansion
  2. for /f delims^= %%a in ('dir /a-d /s /b *.jpg') do (
  3.     set "filename=0000%%~na"
  4.     ren "%%~fa" "!filename:~-5!.jpg"
  5. )
  6. pause
复制代码
回复 6# 398832385
 楼主| 发表于 2016-10-30 22:17:26 | 显示全部楼层
回复 12# aa77dd@163.com


    真牛逼!确实有用!实在太感谢了!!!!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-3-20 14:20 , Processed in 0.020968 second(s), 8 queries , File On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

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