Пакетный скрипт для копирования файла с изменяющимся именем - PullRequest
0 голосов
/ 13 февраля 2012

Наша сборка создает архив с именем app-component-xxxx-SNAPSHOT.zip, где xxxx - номер версии (то есть: 1.6.2.8).Директория c: \ buildresults \ app

Мы хотим написать пакетный скрипт, который а) копирует файл в другой каталог с фиксированным именем, таким как build-results.zip, а затем б) извлекает файл.

Я не уверен, как выполнить часть А. Это не похоже на работу: 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 голосов
/ 14 февраля 2012

Невозможно воспроизвести:

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-файл.

0 голосов
/ 14 февраля 2012

Вы можете попробовать:

xcopy /Y /Q /C /H /R c:\buildresults\app\*.zip c:\xxx\build-results.zip
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...