[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[文件操作] [已解决]批处理如何批量给子文件夹下的所有文件夹后缀加上序号?

本帖最后由 liaoguinan 于 2024-12-30 16:06 编辑

根目录下的文件夹名称如下,如何批量给根目录下的文件夹里的子文件夹后缀加上序号
0001
0002
0003
......
子文件夹下的文件夹如下,
有中文有数字,
有些子文件夹里只有一个就给它编001即可,有些则上百个文件夹。
在不变动原有的排序”下给文件夹后缀加上三位数的序号


下图是加上序号的样子

  1. @echo off
  2. cd /d "%~dp0"
  3. for /d %%d in (*) do (
  4. pushd "%%d"
  5. setlocal
  6. for /f "delims=" %%d in ('dir /b /ad') do (
  7. set /a n+=10001
  8. set d=%%d
  9. setlocal enabledelayedexpansion
  10. ren "!d!" "!d!!n:~-3!"
  11. endlocal
  12. )
  13. endlocal
  14. popd
  15. )
  16. pause
复制代码
1

评分人数

bat小白,请多指教!谢谢!

TOP

本帖最后由 qixiaobin0715 于 2024-12-28 16:25 编辑

回复 2# 77七
“在不变动原有的排序”表达不准确,dir形成的顺序,与目录中的排序有时会不一致,要具体情况具体分析,特别是前面是数字时,不是泛泛的说“在不变动原有的排序”所能说的清楚的。比如这样的文件夹如何处理:
  1. 中国第1大湖泊
  2. 中国第2大湖泊
  3. 中国第5大湖泊
  4. 中国第11大湖泊
  5. 中国第22大湖泊
  6. 中国第30大湖泊
复制代码
改成:
  1. 中国第1大湖泊001
  2. 中国第2大湖泊002
  3. 中国第5大湖泊003
  4. 中国第11大湖泊004
  5. 中国第22大湖泊005
  6. 中国第30大湖泊006
复制代码
实际上dir搜索时排序是这样滴:
  1. 中国第11大湖泊
  2. 中国第1大湖泊
  3. 中国第22大湖泊
  4. 中国第2大湖泊
  5. 中国第30大湖泊
  6. 中国第5大湖泊
复制代码
1

评分人数

    • 77七: 感谢分享技术 + 1

TOP

回复 3# qixiaobin0715


    感谢大佬指点! 我发现我把电脑中查看和dir命令的排序混淆了。
但是此贴中好像不受影响,文件夹名前已有序号排序。
bat小白,请多指教!谢谢!

TOP

回复 4# 77七
之所以提出这个问题,从楼主提供的信息来看,总觉得太随意,不一定完全代表他的真实意图,所以我才提出这种疑问,如果真是像楼主提供的格式的话,就不会有什么问题了。

TOP

返回列表