Board logo

标题: [文本处理] 求助如何把当前目录下的TXT文档按标题进行排序? [打印本页]

作者: lominseo    时间: 2020-7-11 16:26     标题: 求助如何把当前目录下的TXT文档按标题进行排序?

求助如何把当前目录下的TXT文档按标题进行排序?
标题是小说类型的
如第一章、第二章

先批量改名为
第1章、第2章

然后再第1 第2这样递增排序

有没有大神帮下忙啊。。。
作者: smss    时间: 2020-7-11 16:42

具体怎样命名的
作者: lominseo    时间: 2020-7-11 17:23

比方说
第一章  她没有过去.txt
第二章  我没有过去.txt
改成
第1章她没有过去.txt
第2章我没有过去.txt

差进行排序
作者: lominseo    时间: 2020-7-11 17:37

回复 2# smss


    还在吗老哥
作者: smss    时间: 2020-7-11 18:52

本帖最后由 smss 于 2020-7-11 19:08 编辑
  1. @echo off&setlocal enabledelayedexpansion
  2. for /f "tokens=1,2,3 delims=第章" %%i in ('dir *.txt /b/s') do (set m=%%j
  3. if not "!m!"=="" (set n=0&set o=.&call :s
  4. if "!m:~-1!"=="十" set o=!o!0
  5. set "p=%%k"&set p=!p: =!
  6. ren "%%i第!m!章%%k" "第!o:~1!章!p!"
  7. ))
  8. pause
  9. goto :eof
  10. :s
  11. set t=!m:~%n%,1!
  12. if not "!t!"=="" (
  13. if "!t!"=="一" set o=!o!1
  14. if "!t!"=="二" set o=!o!2
  15. if "!t!"=="三" set o=!o!3
  16. if "!t!"=="四" set o=!o!4
  17. if "!t!"=="五" set o=!o!5
  18. if "!t!"=="六" set o=!o!6
  19. if "!t!"=="七" set o=!o!7
  20. if "!t!"=="八" set o=!o!8
  21. if "!t!"=="九" set o=!o!9
  22. if "!t!"=="十" if "!n!"=="0" set o=!o!1
  23. set/a n+=1
  24. goto s)
  25. :eof
复制代码

作者: lominseo    时间: 2020-7-13 09:30

smss 发表于 2020-7-11 18:52



    感谢  试了一下  没结果  还是谢谢你了




欢迎光临 批处理之家 (http://www.bathome.net/) Powered by Discuz! 7.2