Board logo

标题: 文件批量命名 [打印本页]

作者: zouzhxi     时间: 2007-1-13 03:28    标题: 文件批量命名


for %%z in (c d) do (
         for /f "tokens=*" %%i in ('dir /a-d /s /b "%%z:\zou.zzx"') do (
                echo.%%i>>"%cd%\zou.txt"
))
zou.txt结果是:

  Quote:
c:\z\ubb\zou.zzx
c:\age\zou.zzx
d:\zouzhxi\image\player_images\zou.zzx
d:\zouzhxi\image\webimages\zou.zzx

我想把这些文件统一复制到一个名为(zou)的文件夹里.这时出现问题了.
因为,所有文件名是一样的.最终也只有一个zou.zzx的文件.

  Quote:
让复制出来的文件前面加上(序号_zou.zzx)这样的名字,

zou文件夹里变成这样的:
1_zou.zzx
2_zou.zzx
3_zou.zzx
...


能不能在里边加上一段:
set n=0
set /a n=n+1
可不可以呀...

有什么办法可以做到了...谢谢...
作者: lxmxn     时间: 2007-1-13 03:34

@echo off&Setlocal EnableDelayedExpansion
set num=1
for /f "delims=" %%a in (zou.txt) do (
    copy "%%a" zou\!num!_zou.zzx
    set /a num+=1
)
pause
::没有测试,试试看。

作者: zouzhxi     时间: 2007-1-13 03:49
我试了.不行了...
for %%z in (c d) do (
         for /f "tokens=*" %%i in ('dir /a-d /s /b "%%z:\zou.zzx"') do (
                echo.copy "%%i" "%cd%\Recycled_file\">>"%cd%\py.cmd"
))
                call "%cd%\py.cmd"
能不能在"%cd%\Recycled_file\(这里先加上序号)_zou.zzx"
在py.cmd文件是这样的.

  Quote:
copy "c:\z\ubb\zou.zzx" "%cd%\Recycled_file\1_zou.zzx"
copy "c:\age\zou.zzx" "%cd%\Recycled_file\2_zou.zzx"


作者: lxmxn     时间: 2007-1-13 03:52

  我试了我的,是可行的。不知道你为什么不行。

  你的思路复杂了。