中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

中国DOS联盟论坛
现在时间是 2026-08-12 23:14
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » [已解决]求解个批量修改文件夹名字批处理 查看 841 回复 3
楼 主 [已解决]求解个批量修改文件夹名字批处理 发表于 2010-01-24 16:40 ·  中国 广西 贺州 钟山县 电信
初级用户
积分 20
发帖 17
注册 2009-06-16 05:37
17年会员
UID 147519
性别 男
状态 离线
有个a的文件夹,里面多个qqq20100111,qqq20100112,qqq20100113,qqq
20100114这样的文件夹,并且每个文件夹里面有个a.txt的文档,我想把a.txt文档里面内容的第二行的第3个字符后面的字符提取出来作为qqq20100111,qqq20100112,qqq20100113,qqq20100114文件夹的名字

a\qqq20100111\www.txt
a\qqq20100112\www.txt
a\qqq20100113\www.txt
a\qqq20100114\www.txt


得到的结果是把文档里面的字符提取作为文件夹的名字

a\名字20100111
a\名字20100112
a\名字20100113
a\名字20100114

[ Last edited by qubin1979 on 2010-1-27 at 13:18 ]
2 发表于 2010-01-24 23:10 ·  中国 广西 贺州 钟山县 电信
初级用户
积分 20
发帖 17
注册 2009-06-16 05:37
17年会员
UID 147519
性别 男
状态 离线
会的大哥给我写写啊 急着用 谢谢了
3 发表于 2010-01-25 10:04 ·  中国 北京 中电华通通信有限公司
高级用户
★★★
据说是李先生
积分 609
发帖 400
注册 2008-04-23 15:55
18年会员
UID 116706
性别 男
状态 离线
放到你那个 a 文件夹下面运行,你先看看这个显示的对不对,免得搞错了。

如果对的话就把 echo ren "!d!" "!str!!t!" 那句的 echo 去掉就行了

@echo off
::文件夹名最前面的要替换的字符串
set "ching=qqq"
::文件夹下面的那个文本文件名字
set "fn=a.txt"
setlocal enabledelayedexpansion
for /f "delims=" %%d in ('dir /b /ad %ching%*') do (
set "d=%%d"
set "t=!d:%ching%=!"
set /a n=0
for /f "delims=" %%s in ('type "%%d\%fn%"') do (
set /a n+=1
if !n!==2 (
set "str=%%s"
set "str=!str:~4!"
echo ren "!d!" "!str!!t!"
)
)
)
pause>nul
┏━━━━━━┓
┃据说是李先生┃
┠──────┨
┃*ntRSS┃
┗━━━━━━┛
4 发表于 2010-01-27 13:17 ·  中国 广西 贺州 钟山县 电信
初级用户
积分 20
发帖 17
注册 2009-06-16 05:37
17年会员
UID 147519
性别 男
状态 离线
谢谢了楼上的朋友
论坛跳转: