2014-12-10 3 views
0

Я ищу пакетный скрипт для обновления файла свойств после каждой сборки через Jenkins. Я хочу обновить этот файл с помощью сборки. Какbat-скрипт для обновления значения файла свойства

VER=1.234.44.5,1.234.44.6,1.234.44.7 

И хотите сохранить только 5 записи там, так что новая сборка удаляет последний первую запись и добавляет новую версию в первой в конце. Можно ли это выполнить с помощью пакетного скрипта?

+1

Что вам требуется? Как выглядит ваша строка ввода? И какова ожидаемая выходная линия? – gbabu

+0

Я просто хочу обновить этот файл новыми энтемами. Как и новая сборка, необходимо удалить последнюю версию вставки 1.234.44.7 и добавить новую версию 1.234.44.8 в начало VER = 1.234.44.8, 1.234.44.5,1.234.44.6 – user2367078

+0

В другом задании Дженкинса он считывает этот файл свойств и предварительно заполняет параметризованная сборка. Поэтому я могу только выбрать версию, которую мне нужно сделать для сборки – user2367078

ответ

0

Боюсь, я не совсем понимаю ваш запрос. Тем не менее, файл Batch ниже «Удалить 1.2.3.1 и добавить в конце 1.2.3.6» от VER=1.2.3.1,1.2.3.2,1.2.3.3,1.2.3.4,1.2.3.5:

@echo off 
setlocal enabledelayedexpansion 

set VER=1.2.3.1,1.2.3.2,1.2.3.3,1.2.3.4,1.2.3.5 
echo Before: %VER% 

for /F "tokens=2-5 delims=," %%a in ("%VER%") do (
    set next=%%~Xd 
    set /A next=!next:~1!+1 
    set VER=%%a,%%b,%%c,%%d,%%~Nd.!next! 
) 

echo After: %VER% 
+0

Спасибо Aacini, переменная VER находится в файле build.properties. Можете ли вы добавить шаги, которые обновляют файл свойств? Я хочу запустить этот скрипт в конце работы по созданию Jenkins. Это обновит build.properties с новым номером версии. Во второй работе Jenkins, которая выполняет развертывание, прочитайте этот файл build.properties и заполните доступные версии сборки, чтобы выбрать для развертывания. – user2367078

+0

И новая версия будет передана в качестве аргумента для этого скрипта. В вашем скрипте вычисляется – user2367078

+0

Aacini, ваш скрипт помогает понять, как я могу обновить. Вот сценарий, который я сделал из твоего. ** '@ эхо от SETLOCAL enabledelayedexpansion набор NV =% 1 набор ПРОПОРЦ.УСИЛЕНИЕ =% 2 Для/F "токенов = 1 * delims ==" %% A IN (% ПРОПОРЦ.УСИЛЕНИЕ%) DO ( IF" %% A "==" VER "set VERS = %% B ) echo Before:% VERS% Для/F" tokens = 2-5 delims =, "%% a in ("% VERS% ") do ( echo После: %% a, %% b, %% c, %% d,% NV% echo VER = %% a, %% b, %% c, %% d,% NV%>% PROP % ) выход/b' ** – user2367078

Смежные вопросы