中国DOS联盟

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

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

中国DOS联盟论坛
现在时间是 2026-08-03 15:18
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » 求助(改名) 查看 757 回复 8
楼 主 求助(改名) 发表于 2007-03-08 12:45 ·  中国 四川 成都 电信
初级用户
积分 37
发帖 17
注册 2007-01-27 09:48
19年会员
UID 77838
性别 男
状态 离线
有这样一些文件:A001~A200
要把A001~A070改成A01~A70
A071~A150改成B01~B80
请大虾帮忙写个批处理!!!
2 试试 发表于 2007-03-08 22:50 ·  中国 湖北 武汉 电信
初级用户
积分 22
发帖 10
注册 2007-02-16 22:46
19年会员
UID 79647
性别 男
状态 离线
@echo off
setlocal ENABLEDELAYEDEXPANSION

for /L %%i in (1,1,70) do (
set str=00%%i
set str1=!str:~-3!
set str2=!str:~-2!
echo ren A!str1! A!str2!
)

set /a num=1
for /L %%i in (71,1,150) do (
set str=00%%i
set str1=!str:~-3!
set str2=00!num!
set str2=!str2:~-2!
set /a num += 1
echo ren A!str1! B!str2!
)
3 test266 发表于 2007-03-12 06:23 ·  中国 四川 成都 电信
初级用户
积分 37
发帖 17
注册 2007-01-27 09:48
19年会员
UID 77838
性别 男
状态 离线
谢谢大吓帮忙,俺试了下,在运行时是显示的改了名字,但是,文件却还是老样子,没有改名字。是哪里的问题???
4 发表于 2007-03-12 06:27 ·  中国 广西 玉林 博白县 电信
金牌会员
★★★★
积分 3,687
发帖 1,467
注册 2005-08-08 12:00
20年会员
UID 44210
状态 离线
echo ren A!str1! A!str2!
echo ren A!str1! B!str2!

to

ren A!str1! A!str2!
ren A!str1! B!str2!
5 可以了 发表于 2007-03-12 06:47 ·  中国 四川 成都 电信
初级用户
积分 37
发帖 17
注册 2007-01-27 09:48
19年会员
UID 77838
性别 男
状态 离线
去掉ECHO就可以改了,谢谢!!
6 能解释下吗 发表于 2007-03-12 06:51 ·  中国 四川 成都 电信
初级用户
积分 37
发帖 17
注册 2007-01-27 09:48
19年会员
UID 77838
性别 男
状态 离线
set str1=!str:~-3!
set str2=00!num!
set str2=!str2:~-2!
set /a num += 1
能说说=号后是什么意思吗??
7 发表于 2007-03-12 07:02 ·  中国 湖北 武汉 电信
初级用户
积分 22
发帖 10
注册 2007-02-16 22:46
19年会员
UID 79647
性别 男
状态 离线
set str1=!str:~-3! 取str字符串的最后3个字符
set str2=00!num! 在数字前加两个0,也就是1变成001,99变成0099
set str2=!str2:~-2! 然后再取最后两个字符,则001变成01,0099变成99
8 谢谢 发表于 2007-03-12 07:24 ·  中国 四川 成都 电信
初级用户
积分 37
发帖 17
注册 2007-01-27 09:48
19年会员
UID 77838
性别 男
状态 离线
如果文件是带扩展名的,是不是把
set str1=!str:~-3! 改成 set str1=!str:~-6!就可以呢?
9 发表于 2007-03-12 08:03 ·  中国 湖北 武汉 电信
初级用户
积分 22
发帖 10
注册 2007-02-16 22:46
19年会员
UID 79647
性别 男
状态 离线
直接加在这行上,以.txt为例
ren A!str1!.txt A!str2!.txt
ren A!str1!.txt B!str2!.txt
论坛跳转: