用于复制具有更改名称的文件的批处理脚本

时间:2012-02-13 19:58:34

标签: windows batch-file

我们的构建生成一个名为app-component-x.x.x.x-SNAPSHOT.zip的存档,其中x.x.x.x是版本号(即:1.6.2.8)。目录是c:\ buildresults \ app

我们想编写一个批处理脚本,a)将文件复制到另一个具有固定名称的目录,例如build-results.zip,然后b)提取文件。

我不知道如何做A部分。这似乎不起作用:copy c:\buildresults\app\*.zip c:\xxx\build-results.zip

有什么想法吗?


更新

正在复制文件但是尺寸要小得多。即:文件似乎已损坏。

这似乎有效但不理想:

cd buildresults\app

for %%f in (*component*) do (
    echo %%~nf
    7za.exe -oC:\buildresults\app x "%%~nf.zip"
)

2 个答案:

答案 0 :(得分:0)

你可以尝试:

xcopy /Y /Q /C /H /R c:\buildresults\app\*.zip c:\xxx\build-results.zip

答案 1 :(得分:0)

无法重现:

D:\>mkdir xxx

D:\>echo test > test-1.2.3.zip

D:\>copy test-*.zip xxx\test-current.zip
test-1.2.3.zip
        1 Datei(en) kopiert.

D:\>type xxx\test-current.zip
test

D:\>

你确定目标不存在吗?顺便说一下,你确定你的*在每种情况下只匹配一个文件吗?因为将多个文件复制到一个目标是一个有效的操作,最终会得到一个无效的zip文件。