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

[文件操作] 求批处理 取文本指定行中间的内容做文件名

[复制链接]
发表于 2018-7-31 10:45:39 | 显示全部楼层 |阅读模式
求批处理 取文本第58行中间的内容做文件名
很多*.ccb文本文件

57行<array>

58行<string>9121_rd2_stand_3_1.png</string>

59行<string>ccbt。。。。。。</string>

取58行“9121_rd2_stand_3_1”做文件名
发表于 2018-7-31 11:04:32 | 显示全部楼层
  1. @echo off
  2. for /f "skip=57 tokens=2 delims=<>" %%i in ('type "1.ccb"') do (
  3.     set "file=%%i"
  4.     goto :ChangeName
  5. )

  6. :ChangeName
  7. ren "1.ccb" "%file%"
复制代码
 楼主| 发表于 2018-7-31 11:14:49 | 显示全部楼层
回复 2# Batcher


    有很多.ccb文件需要修改  包括子目录
这个怎么写呢 老大
发表于 2018-7-31 14:19:45 | 显示全部楼层
本帖最后由 yhcfsr 于 2018-7-31 14:23 编辑
  1. @echo off
  2. for /r %%a in (*.ccb) do call :rename_file "%%a" "%%~xa"
  3. pause&goto :eof

  4. :rename_file (file,ext)
  5. setlocal
  6. for /f "skip=57 tokens=2 delims=<>" %%a in ('type "%~1"') do (
  7.         set "new_name=%%~na"
  8.         goto :break
  9. )
  10. :break
  11. ren "%~1" "%new_name%%~2"
  12. endlocal&goto :eof
复制代码
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-3-18 18:28 , Processed in 0.012332 second(s), 8 queries , File On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

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