中国DOS联盟论坛

中国DOS联盟

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

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

游客:  注册 | 登录 | 命令行 | 会员 | 搜索 | 上传 | 帮助 »
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » 以HTM文件中的title部分批量重命名文件(未完美解决)
作者:
标题: 以HTM文件中的title部分批量重命名文件(未完美解决) 上一主题 | 下一主题
su2353
初级用户





积分 152
发帖 63
注册 2005-8-18
状态 离线
『楼 主』:  以HTM文件中的title部分批量重命名文件(未完美解决)

当D:\CNDOS目录下
6546.html
aldfj.html
adsf.html

执行以下命令:
for /f "tokens=1,2,4 delims=<>:" %a in ('findstr "<title> </title>" D:\cndos\*.html') do ren "%a:%b" "%c.htm"

结果:
只有一个文件按要求改成:"(已解决)生成随机数(78),显示结果是78=2+4+8+64.HTML "

另两个失败,保持原文件名
另两个的TITLE分别是:"请教 for /l 语句中的 set /a 问题 ","for 加 set /a 能否实现开方 "

会不会是斜杠"/"引起的,有什么办法解决

代码来源于:
http://www.cn-dos.net/forum/view ... 1&highlight=htm

[ Last edited by su2353 on 2007-11-29 at 01:50 PM ]

2007-11-27 16:22
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
ThinKing
中级用户





积分 471
发帖 207
注册 2007-5-3
状态 离线
『第 2 楼』:  

可以,搜索一下论坛吧,貌似有类似的讨论。

2007-11-27 17:07
查看资料  发短消息 网志   编辑帖子  回复  引用回复
su2353
初级用户





积分 152
发帖 63
注册 2005-8-18
状态 离线
『第 3 楼』:  



  Quote:
Originally posted by ThinKing at 2007-11-27 17:07:
可以,搜索一下论坛吧,貌似有类似的讨论。

请问要用什么关键字搜

2007-11-27 17:11
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
ThinKing
中级用户





积分 471
发帖 207
注册 2007-5-3
状态 离线
『第 4 楼』:  

“html”、“替换”、“批量”……

2007-11-27 17:14
查看资料  发短消息 网志   编辑帖子  回复  引用回复
su2353
初级用户





积分 152
发帖 63
注册 2005-8-18
状态 离线
『第 5 楼』:  



  Quote:
Originally posted by ThinKing at 2007-11-27 17:14:
“html”、“替换”、“批量”……

thanks

用HTML找到

2007-11-27 17:30
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
su2353
初级用户





积分 152
发帖 63
注册 2005-8-18
状态 离线
『第 6 楼』:  

当HTM文件TITLE中有"/"号的时候重命名失败

2007-11-29 13:37
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
lxmxn
版主




积分 11386
发帖 4938
注册 2006-7-23
状态 离线
『第 7 楼』:  

因为windows文件名命名规则里面不允许文件名含有"/",所以重命名失败,可以重命名之前替换/为其它的字符。

2007-11-29 14:00
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
su2353
初级用户





积分 152
发帖 63
注册 2005-8-18
状态 离线
『第 8 楼』:  



  Quote:
Originally posted by lxmxn at 2007-11-29 14:00:
因为windows文件名命名规则里面不允许文件名含有"/",所以重命名失败,可以重命名之前替换/为其它的字符。

那能批量替换 /比如替换成某个字母如 "l"

2007-11-29 14:05
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
lxmxn
版主




积分 11386
发帖 4938
注册 2006-7-23
状态 离线
『第 9 楼』:  

命令行试试这个:
set string=/bin/user
echo %string:/=#%p


2007-11-29 14:28
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
su2353
初级用户





积分 152
发帖 63
注册 2005-8-18
状态 离线
『第 10 楼』:  

我是这样试的,MS不行

D:\CNdos>for /F "tokens=1,2,4 delims=<>:" %a in ('findstr "<title> </title>" D:\
cndos\*.html') do (
set string=/bin/user
echo /=#p
ren "%a:%b" "%c.htm"
)

D:\CNdos>(
set string=/bin/user
echo /=#p
ren "D:\cndos\001.html" "请教 for /l 语句中的 set /a 问题 .htm"
)
/=#p
系统找不到指定的路径。

D:\CNdos>(
set string=/bin/user
echo /=#p
ren "D:\cndos\002.html" "for 加 set /a 能否实现开方 .htm"
)
/=#p
系统找不到指定的路径。

2007-11-29 14:35
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
su2353
初级用户





积分 152
发帖 63
注册 2005-8-18
状态 离线
『第 11 楼』:  

我刚接触批处理,可以说是什么都不懂,具体怎么做

完整的代码

2007-11-29 14:37
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
lxmxn
版主




积分 11386
发帖 4938
注册 2006-7-23
状态 离线
『第 12 楼』:  

试试下面这个,局限性太大了,要求html文件的title标签独处一行:
@echo off&Setlocal EnableDelayedExpansion

for /f "tokens=1,2,4 delims=<>:" %%a in ('findstr /i "<title>.*</title>" e:\cmd\html\*.htm') do (
    set string=%%c
    set string=!string:/=#!
    set string=!string:\=#!
    set string=!string:^|=#!
    set string=!string:?=#!   
    ren "%%a:%%b" "!string!.html"
)


2007-11-29 15:14
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
su2353
初级用户





积分 152
发帖 63
注册 2005-8-18
状态 离线
『第 13 楼』:  



  Quote:
Originally posted by lxmxn at 2007-11-29 15:14:
试试下面这个,局限性太大了,要求html文件的title标签独处一行:[code]@echo off&Setlocal EnableDelayedExpansion

for /f "tokens=1,2,4 delims=<>:" %%a in ...

谢谢,不愧是版主

2007-11-29 20:19
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
su2353
初级用户





积分 152
发帖 63
注册 2005-8-18
状态 离线
『第 14 楼』:  

set string=!string:/=#!

虽然问题解决,但上面那个是什么意思

告特别是那个冒号":"是什么意思

2007-11-29 20:33
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
lxmxn
版主




积分 11386
发帖 4938
注册 2006-7-23
状态 离线
『第 15 楼』:  

http://www.cn-dos.net/forum/viewthread.php?tid=34049

看置顶“Question10”。

2007-11-29 23:55
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复

请注意:您目前尚未注册或登录,请您注册登录以使用论坛的各项功能,例如发表和回复帖子等。


可打印版本 | 推荐给朋友 | 订阅主题 | 收藏主题



论坛跳转: