Board logo

标题: [文件操作] [已解决]指定截取内容进行重命名? [打印本页]

作者: czvde    时间: 2022-4-14 22:16     标题: [已解决]指定截取内容进行重命名?

本帖最后由 czvde 于 2022-4-15 14:31 编辑

AAA00011一二1三.txt
CCC01912一二0一三.txt

重命名效果:
文档00017——AAA00011一二1三.txt
文档01918——CCC01912一二0一三.txt

已解决!
作者: Batcher    时间: 2022-4-14 22:49

回复 1# czvde


    固定从第4个字符开始截取吗?如果不是,请给出真实的规律
作者: czvde    时间: 2022-4-14 22:52

回复 2# Batcher


    是固定在第4个字符开始截取
作者: qixiaobin0715    时间: 2022-4-15 10:17

本帖最后由 qixiaobin0715 于 2022-4-15 12:05 编辑

将代码另存为ANSI编码:
  1. @echo off
  2. setlocal enabledelayedexpansion
  3. for /f "delims=" %%i in ('dir /b /a-d *.txt') do (
  4.     set str=%%i
  5.     set num=10!str:~3,5!
  6.     set /a num+=6
  7.     ren "%%i" "文档!num:~1!——%%i"
  8. )
  9. pause
复制代码

作者: czvde    时间: 2022-4-15 11:53

本帖最后由 czvde 于 2022-4-15 14:29 编辑

回复 4# qixiaobin0715

感谢
作者: qixiaobin0715    时间: 2022-4-15 12:07

回复 5# czvde
那新数字只能变成6位数了。已修改
作者: Batcher    时间: 2022-4-15 13:16

回复 1# czvde
  1. @echo off
  2. cd /d "%~dp0"
  3. setlocal enabledelayedexpansion
  4. for /f "delims=" %%i in ('dir /b /a-d *.txt') do (
  5.     set "str=%%i"
  6.     set "num=10!str:~3,5!"
  7.     set /a num+=6
  8.     if !num! lss 1100000 (
  9.         ren "%%i" "文档!num:~2!——%%i"
  10.     ) else (
  11.         ren "%%i" "文档!num:~1!——%%i"
  12.     )
  13. )
复制代码





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