标题: 批量按序更改文件名(已结)
[打印本页]
作者: buddiyar
时间: 2006-7-9 02:27
标题: 批量按序更改文件名(已结)
现有25个文本文件,其名称按序分别由1.txt增至25.txt,其内容对应于文件名.现欲写一批处理程序一次性按序更改其名称,要求将2txt更名为1txt,3txt则相应更名为2txt,以此类推至25.txt更名为24.txt.而1.txt更名为250.txt!
我自己写的程序如下,有错误却苦于无法修正,请高手指点
--------------------------rennum.bat-------------------------------
rem 生成文本文件
for /l %%i in (1,1,25) do echo %%i >%%i.txt
rem 生成过渡变量文件
for /l %%i in (2,1,25) do echo %%i >> num.txt
setlocal ENABLEDELAYEDEXPANSION
ren 1.txt temp.txt
rem 减序更名文件
for /f %%i in (num.txt) do ( set /a j=%%i && set /a j=j-1 && ren %%i.txt %j%.txt )
ren temp.txt 25.txt
ENDLOCAL
[
Last edited by buddiyar on 2006-7-15 at 01:13 ]
作者: doscc
时间: 2006-7-9 03:10
Quote: |
- @echo off & setlocal ENABLEDELAYEDEXPANSION
- if exist 1.txt ren 1.txt 250.txt
- for /l %%i in (2,1,25) do (
- set /A j=%%i-1
- ren %%i.txt !j!.txt
- )
DOSCC 2006-07-09 03:02 |
|
作者: buddiyar
时间: 2006-7-9 05:53
ren %%i.txt !j!.txt
哪位兄弟能解释一下"!j!.txt"吗
小弟刚开始学这个啊
在此谢过先
作者: buddiyar
时间: 2006-7-9 06:34
小的搜了一下啊
!好象是"变量顶界符"
但是具体是什么意思我还是不知道
哪位兄弟能不能给点具体的解释或参考资料啊
联系QQ:243589543 或
mail:
sshong@qianlong.com
作者: namejm
时间: 2006-7-11 09:49
先用setlocal ENABLEDELAYEDEXPANSION然后再用!,表示启用了变量延迟,请参考这个帖子。
什么情况下该启用变量延迟:
http://www.cn-dos.net/forum/view ... F%E5%BB%B6%E8%BF%9F
作者: doscc
时间: 2006-7-11 16:12
Quote: |
Originally posted by namejm at 2006-7-11 09:49:
先用setlocal ENABLEDELAYEDEXPANSION然后再用!,表示启用了变量延迟,请参考这个帖子。
什么情况下该启用变量延迟:
[url]http://www.cn-dos.net/forum/viewth ... |
|