Board logo

标题: 请教:文件重命名 [打印本页]

作者: feixiang     时间: 2009-4-16 12:17    标题: 请教:文件重命名

我的某个硬盘文件夹里有很多txt小说,文件名如下:

00.txt、mydoc01.txt、mydoc02.txt、mydoc03.txt、mydoc04.txt……依此类推

其中00.txt里保存着mydoc01.txt、mydoc02.txt、mydoc03.txt、mydoc04.txt……的中文文件名,如下:

目录
Dos 我的最爱
批处理 我更喜欢
等等

注意:有些中文名字有空格之类的有的文件名还很长

如何用批处理把mydoc01.txt、mydoc02.txt……改成00.txt里的中文名呀???

我用dir /b >1.txt然后复制到excel有多少个文件就制作了多少个重命名命令,文件名空格也去掉了,可以是可以了但很烦锁,不是我的本意。

求一个批处理就搞定!!!

救命…………help me
作者: freeants001     时间: 2009-4-16 20:28

setlocal  enabledelayedexpansion
for /f "tokens=*" %%i in (00.txt) do (
set /a i+=1
set m=0!i!
ren mydoc!m:~-2!.txt  "%%i"
)
[ Last edited by freeants001 on 2009-4-16 at 22:00 ]
作者: feixiang     时间: 2009-4-16 21:34    标题: 一闪而过

感谢二楼兄弟的热心帮助,但是出了点问题

我在小说所在文件夹,新建了个文本然后把你的批处理复制进去保存


把txt改成bat


双击打开,黑色的背影一闪而过

其它的什么也没有改变
作者: freeants001     时间: 2009-4-16 21:44
是放在包含下面这些文件的目录吗?
00.txt、mydoc01.txt、mydoc02.txt、mydoc03.txt、mydoc04.txt
作者: freeants001     时间: 2009-4-16 21:49
发现二楼代码ren后多打了个 %%i ,现已更正,楼主再试试
作者: feixiang     时间: 2009-4-16 22:37    标题: 呵呵

是的,00.txt里包含着mydoc01.txt、mydoc02.txt、mydoc03.txt、mydoc04.txt
的中文名当然也有英文的,文件名字还有空格之类的,有的还很长

我把ren 后面的%%i去掉了再保存,也是一闪而过,连黑影子都看不到,只是看到文件夹窗口动了一下。
作者: freeants001     时间: 2009-4-16 23:23

@echo off
setlocal  enabledelayedexpansion
for /f "tokens=*" %%i in (00.txt) do (
set /a i+=1
set m=0!i!
ren mydoc!m:~-2!.txt  "%%~nxi".txt
)
pause

作者: netbenton     时间: 2009-4-17 00:32
改名的那句这样才合理:
ren mydoc!m:~-2!.txt  "%%~nxi.txt"

[ Last edited by netbenton on 2009-4-16 at 22:35 ]
作者: freeants001     时间: 2009-4-17 00:49


  Quote:
Originally posted by netbenton at 2009-4-17 00:32:
改名的那句这样才合理:
ren mydoc!m:~-2!.txt  "%%~nxi.txt"

[ Last edited by netbenton on 2009-4-16 at 22:35 ]

这包没问题的
作者: netbenton     时间: 2009-4-17 00:54
试了,果真没有问题
作者: feixiang     时间: 2009-4-17 13:56    标题: 谢谢各位!谢谢大家的帮助!

OK了

谢谢你们

谢谢你们宝贵的经验