中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --
联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟
中国DOS联盟论坛
现在时间是 2026-08-01 21:17
48,037 主题排行 / 350,122 发帖 / 今日 2 篇 / 48,249 会员排行
DOS批处理 & 脚本技术(批处理室) » 求助:如何以數字重命名所有文件
可打印版本  1,375 / 4
第1楼 buddiyar 发表于 2006-07-23 11:29
初级用户 发帖 75 积分 160
求助:如何以數字重命名所有文件
我經常從網上收藏一些精美的壁紙
也沒有仔細的整理過
現在想用批處理的方法以數字重命名
我自己也嘗試著編寫但沒成功

問題如下:
1.我不知道這些圖片總數量多少
2.其中有部分圖片名稱已經為數字
3.有些圖片名稱中含有空格

請教高手和眾兄弟幫忙!!
第2楼 fastslz 发表于 2006-07-23 11:52
铂金会员 发帖 2,315 积分 5,493 来自 上海
好像也没必要,看图软件都可以批量重命名
XP环境的话,全部选中/重命名就ok了
第3楼 buddiyar 发表于 2006-07-23 12:49
初级用户 发帖 75 积分 160
倒是可以用acd see的啦
只是以後我還會不定期增加圖片的
到時侯還得運行它 再批量重命名
感覺很麻煩的
不如自己作個批處理雙擊運行來得快啊 
第4楼 namejm 发表于 2006-07-24 22:32
荣誉版主 发帖 1,737 积分 5,226 来自 成都
  如果对要重新命名的文件没有顺序方面的要求,下面的代码可以解决问题(以修改jpg格式的图片文件名为例):


  类似的讨论请看:

求助!怎样给一组文件的文件名加上序号(1,2,3...)?
http://www.cn-dos.net/forum/viewthread.php?tid=21240&fpage=1&highlight=%E6%96%87%E4%BB%B6%E5%90%8D

[ Last edited by namejm on 2006-7-24 at 22:38 ]
第5楼 无奈何 发表于 2006-07-24 23:42
荣誉版主 发帖 356 积分 1,338
这是我以前写的一个脚本,放到 sedto 里选中文件后调用。曾经做过一个叫 sedto+ 小玩意,是一些批处理组成的能完成许多方便操作的小东西,这是其中的一个功能,但一直苦于没有时间完善、整理所以也就没有贴出来。试试是否顺手。当然此种方式调用脚本会有一些无法解决的限制不做深度讨论了。


  1. @echo off
  2. set /a i=1
  3. if exist "%~dp1%i%%~x1" (
  4. if /i "%~nx1" NEQ "%i%%~x1" set /a j=0&&goto loop2
  5. )
  6. ren "%~1" "%i%%~x1"
  7. if "%~2" == "" goto end

  8. :loop1
  9. set /a i=i+1
  10. shift
  11. if "%~1" == "" goto end
  12. if exist "%~dp1%i%%~x1" (
  13. if /i "%~nx1" NEQ "%i%%~x1" set /a j=0&&goto loop2
  14. )
  15. ren "%~1" "%i%%~x1"
  16. goto loop1

  17. :loop2
  18. set /a j=j+1
  19. if exist "%~dp1%i%(%j%)%~x1" (
  20. if /i "%~nx1" NEQ "%i%(%j%)%~x1" goto loop2
  21. )
  22. ren "%~1" "%i%(%j%)%~x1"
  23. set /a j=0
  24. goto loop1

  25. :end
  26. set i=
  27. set j=
无奈何发表于 2006-07-24 23:30
[ 联系联盟系统管理团队 - 中国DOS联盟 - 标准版 ]
Sponsored by ifanr Inc | © 2001–2023