批处理批量重命名同一目录下的"*.txt"文件 和 上一级目录的名字
这个批处理文件就放在*.txt文件同一目录下
文件夹名如"资料各3",3也可以大于10,以下用3表示
".txt"变成"---3.txt",3就是文件夹中的那个数字
如果遇到中带有"---3",如:"a---3.txt"就不用重命名了,如果是"---2"就把2变成3
如果遇到如:"a.txt"和"a---3.txt"这样的,就把"a.txt"变成"a1---3.txt";如果"a1---3.txt"也存在,就继续往上推,变成"a2---3.txt".即遇到重名的就变化一下,用数字作变量就行,但"---3"不能变.
最后计算一下*.txt文件的个数,用个数乘以3得到一个数N,重命名目录名为"资料各3---N"
=======================
举例:
原来的 要变成这样的
a.txt a---3.txt
b.txt b---3.txt
c-----3.txt c-----3.txt("-"符号超过3个也不用变化)
a a.txt a a---3.txt(文件名中可能有空格,也可能有汉字)
d.txt d2---3.txt
d---3.txt d---3.txt
d1---3.txt d1---3.txt
e.txt e1---3.txt
e---3.txt e---3.txt
e1.txt e11---3.txt
f---2.txt f---3.txt
最后文件夹名要改成"资料各3---33",并且重复运行批处理的话只是把33进行变化.
=======================
我自己写的(不大懂什么意思就拿来用了,参考了本站搜索出来的"重命名"帖子):
---------------
set a=---2
for /f "delims=" %%i in ('dir /b *.txt') do ren "%%i" "%%~ni%a%.txt"
pause
---------------
我不会写判断的,使得重复运行后出现"a---3---3.txt"这样的名字.这也是理所当然的,所以请教大家帮忙.
我的要求可能是太高了点,不好意思.我自己也在更改批处理+思考中.
[ Last edited by wxcute on 2007-9-4 at 04:25 PM ]
这个批处理文件就放在*.txt文件同一目录下
文件夹名如"资料各3",3也可以大于10,以下用3表示
".txt"变成"---3.txt",3就是文件夹中的那个数字
如果遇到中带有"---3",如:"a---3.txt"就不用重命名了,如果是"---2"就把2变成3
如果遇到如:"a.txt"和"a---3.txt"这样的,就把"a.txt"变成"a1---3.txt";如果"a1---3.txt"也存在,就继续往上推,变成"a2---3.txt".即遇到重名的就变化一下,用数字作变量就行,但"---3"不能变.
最后计算一下*.txt文件的个数,用个数乘以3得到一个数N,重命名目录名为"资料各3---N"
=======================
举例:
原来的 要变成这样的
a.txt a---3.txt
b.txt b---3.txt
c-----3.txt c-----3.txt("-"符号超过3个也不用变化)
a a.txt a a---3.txt(文件名中可能有空格,也可能有汉字)
d.txt d2---3.txt
d---3.txt d---3.txt
d1---3.txt d1---3.txt
e.txt e1---3.txt
e---3.txt e---3.txt
e1.txt e11---3.txt
f---2.txt f---3.txt
最后文件夹名要改成"资料各3---33",并且重复运行批处理的话只是把33进行变化.
=======================
我自己写的(不大懂什么意思就拿来用了,参考了本站搜索出来的"重命名"帖子):
---------------
set a=---2
for /f "delims=" %%i in ('dir /b *.txt') do ren "%%i" "%%~ni%a%.txt"
pause
---------------
我不会写判断的,使得重复运行后出现"a---3---3.txt"这样的名字.这也是理所当然的,所以请教大家帮忙.
我的要求可能是太高了点,不好意思.我自己也在更改批处理+思考中.
[ Last edited by wxcute on 2007-9-4 at 04:25 PM ]

