![]() |
中国DOS联盟-- 联合DOS 推动DOS 发展DOS --联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum |
| 游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟 |
|
中国DOS联盟论坛 现在时间是 2026-08-04 00:00 |
共 48,038 主题排行 / 350,123 发帖 / 今日 0 篇 / 48,251 会员排行 |
| DOS批处理 & 脚本技术(批处理室) » 怎样用文本行给对应的文件重命名. |
| 可打印版本 868 / 10 |
| 第1楼 zzhh612 | 发表于 2007-04-03 14:25 |
| 中级用户 发帖 103 积分 278 | |
|
怎样用文本行给对应的文件重命名. 有如下歌名文本(GM.txt)百行:
聪明累 伤痕-林忆莲 爱上了 遇见 - 孙燕姿 徐怀钰 - 分飞 酸酸甜甜就是我 流氓大亨 江南 ..... ... 且在e:\music文件夹中有按数字序号命名的MP3(1~100),文件名与同名行号的歌名一一对应(即1.mp3 对应的聪明累,2.mp3对应的是伤痕-林忆莲....)我怎样才能用批处理将这百首歌所对应的歌名进行重命名. |
|
| 第2楼 flyinspace | 发表于 2007-04-03 15:04 |
| 银牌会员 发帖 517 积分 1,206 | |
|
假设该批处理在e;\music这个文件夹里。 @echo off & EnableDelayedExpansion
set count=0 for /f "tokens=* " %%i in ( GM.txt) do ( set /a count=!count!+1 ren "!count!.mp3" "%%i.mp3" ) ----------------------------------------------------------------------- 如此就改完了。。 |
|
| 第3楼 everest79 | 发表于 2007-04-03 15:06 |
| 金牌会员 发帖 1,127 积分 2,564 | |
|
for /f "delims=" %%i in (gm.txt) do (
set /a x+=1 call :renmp3 %x% %%i ) pause :renmp3 ren mp3%1.mp3 %2.mp3 |
|
| 第4楼 flyinspace | 发表于 2007-04-03 15:08 |
| 银牌会员 发帖 517 积分 1,206 | |
Originally posted by everest79 at 2007-4-3 02:06 AM: 噢。。这个文件会出问题的。。 你忘记加goto :EOF 了。。 而且可以设想最后一次会出现文件找不到的情况。。 |
|
| 第5楼 wudixin96 | 发表于 2007-04-03 22:40 |
| 银牌会员 发帖 931 积分 1,928 | |
Originally posted by flyinspace at 2007-4-3 03:04 PM: 为何要加空格??不能直接tokens=*吗?? 还有 for /f "delims=" %%i in (gm.txt) do ( set /a x+=1 call :renmp3 %x% %%i ) pause :renmp3 ren mp3%1.mp3 %2.mp3 不需要变量延迟吗?是否是在for之前没有定义x,所有不需要变量延迟?? 下面一段好像明白了。如果延迟写成set /a x=!x!+1。 [ Last edited by wudixin96 on 2007-4-3 at 10:49 PM ] |
|
| 第6楼 lxmxn | 发表于 2007-04-04 00:54 |
| 版主 发帖 4,938 积分 11,386 | |
|
我也来灌灌水~ |
|
| 第7楼 zzhh612 | 发表于 2007-04-04 02:05 |
| 中级用户 发帖 103 积分 278 | |
|
楼上everest79的最后一名句应为
ren %x%.mp3 %1.mp3 改了后运行成功. 谢谢答复. [ Last edited by zzhh612 on 2007-4-4 at 02:06 AM ] |
|
| 第8楼 a201341717 | 发表于 2007-04-04 02:37 |
| 贫困用户 发帖 20 积分 -2 | |
![]() |
|
| 第9楼 zzhh612 | 发表于 2007-04-04 02:43 |
| 中级用户 发帖 103 积分 278 | |
|
2楼的代码没成功,不知为何 该批处理在e:\music这个文件夹里。GM.txt也在该文件夹中.
运行2楼的代码后显示: 运算符不存在。 系统找不到指定的文件。 哪个运算符不存在呀???文件都在呀. |
|
| 第10楼 zzhh612 | 发表于 2007-04-04 02:45 |
| 中级用户 发帖 103 积分 278 | |
|
6楼的运行成功, 运行正确而且简洁,值得学习.
|
|
| 第11楼 qingfushuan | 发表于 2007-04-04 04:16 |
| 高级用户 发帖 327 积分 502 | |
|
6F的构思巧妙,赞一个
学习了 |
|
|
[ 联系联盟系统管理团队 -
中国DOS联盟 -
标准版 ] Sponsored by ifanr Inc | © 2001–2023 |