楼 主
新手求助一个改文件夹名字的批处理
发表于 2007-10-31 07:57 · 中国 广东 东莞 电信
新手上路
★
积分 12
发帖 5
注册 2007-10-30 23:52
18年会员
UID 101239
性别 男
状态 离线
我想把一个目录下的一些"文件夹"的文件名的第一个字符去掉
比如abc变成bc
里头的"文件夹"名长度不一致,但是都是a打头的,
如可能有 请问如何解决?
第 2 楼
发表于 2007-10-31 09:06 · 中国 北京 鹏博士BGP
银牌会员
★★★
积分 2,098
发帖 566
注册 2007-09-11 07:27
18年会员
UID 97070
性别 男
状态 离线
将批处理放在这些文件夹所在目录.
@echo off
for /f "delims=" %%i in ('dir/ad/b a*') do (
set n=%%i
call set n=%%n:~1%%
call ren "%%i" "%%n%%"
)
[
Last edited by s11ss on 2007-10-31 at 09:09 AM ]
第 3 楼
发表于 2007-10-31 09:07 · 中国 浙江 衢州 中移铁通
银牌会员
★★★
积分 1,436
发帖 739
注册 2007-10-11 17:44
18年会员
UID 99469
性别 男
状态 离线
@echo off
for /d %%i in (a*) do (
set "fn=%%i"
call move "%%i" "%%fn:~1%%"
)
第 4 楼
发表于 2007-10-31 12:42 · 中国 广东 东莞 电信
新手上路
★
积分 12
发帖 5
注册 2007-10-30 23:52
18年会员
UID 101239
性别 男
状态 离线
第 5 楼
发表于 2007-10-31 12:44 · 中国 广东 东莞 电信
新手上路
★
积分 12
发帖 5
注册 2007-10-30 23:52
18年会员
UID 101239
性别 男
状态 离线
第 6 楼
发表于 2007-10-31 13:43 · 中国 浙江 衢州 中移铁通
银牌会员
★★★
积分 1,436
发帖 739
注册 2007-10-11 17:44
18年会员
UID 99469
性别 男
状态 离线
楼主需要解释几楼的??
以下是删除当前目录下所有一级目录文件夹名的第三个字符
@echo off
for /d %%i in (*) do (
set "fn=%%i"
call move "%%i" "%%fn:~0,2%%%%fn:~3%%"
)
第 7 楼
发表于 2007-11-01 08:02 · 中国 广东 东莞 电信
新手上路
★
积分 12
发帖 5
注册 2007-10-30 23:52
18年会员
UID 101239
性别 男
状态 离线
有没有对批处理的语法系统学习的东西啊,像这一段"%%fn:~0,2%%%%fn:~3%%"就不是很懂
第 8 楼
发表于 2007-11-01 08:38 · 中国 浙江 衢州 中移铁通
银牌会员
★★★
积分 1,436
发帖 739
注册 2007-10-11 17:44
18年会员
UID 99469
性别 男
状态 离线
第 9 楼
发表于 2007-11-01 09:02 · 中国 上海 松江区 电信
铂金会员
★★★★
DOS一根葱
积分 5,493
发帖 2,315
注册 2006-05-01 10:41
20年会员
UID 54766
性别 男
来自 上海
状态 离线
这个简单点实际应用
@echo off
set slz=123456789
echo 数字%slz%前三位是%slz:~0,3%, 后三位是%slz:~6,9%, 中间三位是%slz:~3,3%。
echo 数字%slz%中间三位还可以这样%slz:~3,-3%
pause
第 10 楼
发表于 2007-11-01 12:39 · 中国 广东 东莞 电信
新手上路
★
积分 12
发帖 5
注册 2007-10-30 23:52
18年会员
UID 101239
性别 男
状态 离线
论坛跳转: