中国DOS联盟

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

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

中国DOS联盟论坛
现在时间是 2026-07-31 21:24
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » 这些文件怎么批量改名 查看 5,651 回复 35
16 发表于 2007-03-14 07:21 ·  中国 湖北 武汉 电信
版主
★★★★★
积分 11,386
发帖 4,938
注册 2006-07-23 17:10
20年会员
UID 59080
状态 离线

  这个没有出现错误吗?
17 发表于 2007-03-14 07:23 ·  中国 云南 昆明 电信
初级用户
积分 35
发帖 15
注册 2006-10-09 00:42
19年会员
UID 64980
状态 离线
Originally posted by lxmxn at 2007-3-14 07:21:

  这个没有出现错误吗?


没有啊。只是文本是从01写到100。如果没有那么多集数,要浪费点时间。
不知道怎么解决。

Microsoft Windows
(C) 版权所有 1985-2003 Microsoft Corp.

D:\>cd sr

D:\sr>r

D:\sr>for /F %i in (test.txt) do for /F "tokens=*" %a in ('dir /b *.rmvb |fin
%i"') do ren "%a" %i.rmvb

D:\sr>for /F "tokens=*" %a in ('dir /b *.rmvb |find "01"') do ren "%a" 01.rmv

D:\sr>ren "恶魔在身边01.D-vb.rmvb.rmvb" 01.rmvb

D:\sr>for /F "tokens=*" %a in ('dir /b *.rmvb |find "02"') do ren "%a" 02.rmv

D:\sr>ren "恶魔在身边02.D-vb.rmvb.rmvb" 02.rmvb

[ Last edited by RAC on 2007-3-14 at 07:26 AM ]
18 发表于 2007-03-14 07:26 ·  中国 湖北 武汉 电信
版主
★★★★★
积分 11,386
发帖 4,938
注册 2006-07-23 17:10
20年会员
UID 59080
状态 离线

  如果电影名中有一个是包含“101”,那么可能就会出错,应该find可能会同时匹配“01”和“101”,这样改名就混乱了。
本帖最近评分记录 (共 1 条) 点击查看详情
评分人分数时间
oilio +2 2007-03-14 09:57
19 发表于 2007-03-14 07:29 ·  中国 云南 昆明 电信
初级用户
积分 35
发帖 15
注册 2006-10-09 00:42
19年会员
UID 64980
状态 离线
是啊。
不过超过一百集的电影不多。呵呵
你们不从BT上下电影吧?
做电影网站经常从BT上下电影的。下下来的电影名字不规范,不好添加。天天要改。麻烦。所以才想用批处理解决啊
20 发表于 2007-03-14 07:35 ·  中国 湖北 武汉 电信
版主
★★★★★
积分 11,386
发帖 4,938
注册 2006-07-23 17:10
20年会员
UID 59080
状态 离线

  Re RAC:
  
  我一般不下载电影什么的,顶多下载一点好的软件。

  如果你的电影文件名有规律的话,超过100个也是可以解决的。
21 发表于 2007-03-14 07:38 ·  中国 云南 昆明 电信
初级用户
积分 35
发帖 15
注册 2006-10-09 00:42
19年会员
UID 64980
状态 离线
规律就是这样啊
[LY]恶魔在身边01[国语].D-vb.rmvb
都有电影的集数。
22 发表于 2007-03-14 08:50 ·  中国 湖北 武汉 电信
版主
★★★★★
积分 11,386
发帖 4,938
注册 2006-07-23 17:10
20年会员
UID 59080
状态 离线

  如果是你这样的规律,我2楼的代码应该可行。
23 发表于 2007-03-14 09:57 ·  中国 江苏 连云港 联通
高级用户
★★★
前进者
积分 641
发帖 303
注册 2007-01-10 02:57
19年会员
UID 76009
性别 男
状态 离线
呵呵,我才发现学完命令后,其实思路有的时候也非常重要,只有好的根基加上好的想法,才能写出来好的东西,我想不光是批处理,其它的编程应该也是这样,可惜没有学过编程,这辈子是很难往那儿发展啦。今天又有所领悟,多看一些别人写的对自己还是很有帮忙的。谢谢各位的批处理。
我相信总有一天,总会遇到一个人可以相濡以沫、相吻以湿!
24 发表于 2007-03-14 10:34 ·  中国 云南 昆明 电信
初级用户
积分 35
发帖 15
注册 2006-10-09 00:42
19年会员
UID 64980
状态 离线
哈。跑我的贴子来加分了。
你加我也加。。。。
25 发表于 2007-03-14 10:44 ·  中国 广东 广州 番禺区 电信
金牌会员
★★★★
一叶枝头,万树皆春
积分 2,564
发帖 1,127
注册 2006-12-25 22:57
19年会员
UID 74552
性别 男
状态 离线

SETLOCAL ENABLEDELAYEDEXPANSION
for /f "tokens=*" %%i in ('dir /o:n /b *.rmvb') do (
set /a aaa+=1
if !aaa! leq 9 (set bbb=0!aaa!) else (set bbb=!aaa!)
ren %%i.rmvb !bbb!.nmvb
)
ren *.nmvb *.rmvb


[ Last edited by everest79 on 2007-3-14 at 02:58 AM ]
26 发表于 2007-03-14 10:54 ·  中国 湖北 武汉 电信
版主
★★★★★
积分 11,386
发帖 4,938
注册 2006-07-23 17:10
20年会员
UID 59080
状态 离线

  楼上的变量延迟掉了吧。
27 发表于 2007-03-14 13:22 ·  中国 广东 广州 黄埔区 电信
金牌会员
★★★★
一叶枝头,万树皆春
积分 2,564
发帖 1,127
注册 2006-12-25 22:57
19年会员
UID 74552
性别 男
状态 离线
我直接打的,也没测试,就省了一句,嘻嘻
28 发表于 2007-03-14 13:38 ·  中国 湖北 武汉 电信
版主
★★★★★
积分 11,386
发帖 4,938
注册 2006-07-23 17:10
20年会员
UID 59080
状态 离线

  不打算修改过来啊?
29 发表于 2007-03-14 15:58 ·  中国 广东 广州 黄埔区 电信
金牌会员
★★★★
一叶枝头,万树皆春
积分 2,564
发帖 1,127
注册 2006-12-25 22:57
19年会员
UID 74552
性别 男
状态 离线
改了哇
30 发表于 2007-07-14 12:09 ·  中国 江西 南昌 电信
新手上路
积分 1
发帖 2
注册 2007-07-14 11:25
19年会员
UID 93947
性别 男
状态 离线
Originally posted by everest79 at 2007-3-14 03:44 AM:

SETLOCAL ENABLEDELAYEDEXPANSION
for /f "tokens=*" %%i in ('dir /o:n /b *.rmvb') do (
set /a aaa+=1
if !aaa! leq 9 (set bbb=0!aaa!) else (set bbb=!aaa!)
ren %%i.rmvb !bbb!.nmvb ...

学习了,不过如果中间正好少了一集,就会乱了,还是觉得15楼好
论坛跳转: