![]() |
中国DOS联盟-- 联合DOS 推动DOS 发展DOS --联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum |
| 游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟 |
|
中国DOS联盟论坛 现在时间是 2026-08-08 05:39 |
共 48,041 主题排行 / 350,128 发帖 / 今日 3 篇 / 48,253 会员排行 |
| DOS批处理 & 脚本技术(批处理室) » [求助]按列表更名 |
| 可打印版本 777 / 11 |
| 第1楼 cad55 | 发表于 2008-04-21 11:11 |
| 高级用户 发帖 329 积分 620 | |
|
[求助]按列表更名 将01.txt内列表
sdfas oio lfosdf dfie sdfl 6424 .............. 的文件名按02.txt列表更名为 1 2 3 4 ............ [ Last edited by cad55 on 2008-4-21 at 11:13 AM ] |
|
| 第2楼 bat-zw | 发表于 2008-04-21 11:19 |
| 金牌会员 发帖 1,276 积分 3,105 | |
|
问题是不是没讲清楚: 如真要这样,很容易啊
cd.>1.txt for /f "delims=" %%ii in (2.txt) do echo %%i>>1.txt 我想楼主的意思不是这样的吧 |
|
| 第3楼 cad55 | 发表于 2008-04-21 11:28 |
| 高级用户 发帖 329 积分 620 | |
Originally posted by zw19750516 at 2008-4-21 11:19 AM: 不是这个意思... 在一个文件夹内有VV.JPG SS.JPG SSSSS.JPG ......... 用01.txt记录它们的文件名成一列表: 再自定义一个02.txt列表文件:01.jpg 02.jpg 03.jpg ..... 求助一个BAT. 运行它.可以将此文件夹的01.txt内的列表名.文件按02.txt名称来更名. 更改后此文件夹内:01.jpg 02.jpg 03.jpg ..... [ Last edited by cad55 on 2008-4-21 at 11:30 AM ] |
|
| 第4楼 terse | 发表于 2008-04-21 11:39 |
| 银牌会员 发帖 946 积分 2,404 | |
|
直接 DIR 行不?
@echo off for /f "delims=" %%i in ('dir /b *.jpg') do ( set/a n+=1 call echo ren %%~fi 0%%n%%%%~xi ) pause |
|
| 第5楼 bat-zw | 发表于 2008-04-21 11:40 |
| 金牌会员 发帖 1,276 积分 3,105 | |
|
放在文件所在文件夹中运行(未测试)
晕,原来有人已经发了。 [ Last edited by zw19750516 on 2008-4-21 at 11:43 AM ] |
|
| 第6楼 cad55 | 发表于 2008-04-21 11:55 |
| 高级用户 发帖 329 积分 620 | |
Originally posted by zw19750516 at 2008-4-21 11:40 AM: |
|
| 第7楼 bat-zw | 发表于 2008-04-21 12:12 |
| 金牌会员 发帖 1,276 积分 3,105 | |
|
未测试: [ Last edited by zw19750516 on 2008-4-21 at 12:15 PM ] |
|
| 第8楼 zh159 | 发表于 2008-04-21 13:00 |
| 金牌会员 发帖 1,467 积分 3,687 | |
|
如果数量不是太多,可以考虑这个
|
|
| 第9楼 cad55 | 发表于 2008-04-21 13:11 |
| 高级用户 发帖 329 积分 620 | |
Originally posted by zh159 at 2008-4-21 01:00 PM: |
|
| 第10楼 cad55 | 发表于 2008-04-21 13:24 |
| 高级用户 发帖 329 积分 620 | |
Originally posted by cad55 at 2008-4-21 01:11 PM: 谢谢...这样修改一下..就可以了.......... echo off setlocal enabledelayedexpansion for /f "delims=" %%i in (02.txt) do set /a n+=1&set file!n!=%%i set n= for /f "delims=" %%i in (01.txt) do ( set /a n+=1 call ; ren "%%i" "%%file!n!%%" ) 谢谢各位了......... |
|
| 第11楼 terse | 发表于 2008-04-21 13:32 |
| 银牌会员 发帖 946 积分 2,404 | |
|
这个意思吗?
@echo off for /f "delims=" %%i in (1.txt) do call :lp "%%i" pause goto :eof :lp for /f "delims=" %%a in (2.txt) do if not defined %%a set %%a=i & ren %1 %%a&goto :eof |
|
| 第12楼 cad55 | 发表于 2008-04-21 14:40 |
| 高级用户 发帖 329 积分 620 | |
Originally posted by terse at 2008-4-21 01:32 PM: ![]() ![]() 是这样的效果 谢谢.... |
|
|
[ 联系联盟系统管理团队 -
中国DOS联盟 -
标准版 ] Sponsored by ifanr Inc | © 2001–2023 |