Я ничего не знаю о Дженкинсе, но похоже, что вы пытаетесь получить доступ к переменным окружения с помощью некоторой формы синтаксиса Unix - это не сработает.
Если имя переменной равно WORKSPACE, тогдазначение раскрывается в пакете Windows с помощью
%WORKSPACE%
.Эта форма расширения выполняется во время синтаксического анализа.Например, он выведет на экран значение WORKSPACE
echo %WORKSPACE%
Если вам нужно значение во время выполнения, вам нужно использовать задержанное расширение !WORKSPACE!
.Задержка расширения обычно не включена по умолчанию.Используйте SETLOCAL EnableDelayedExpansion
, чтобы включить его.Задержанное расширение часто требуется, потому что блоки кода в скобках анализируются одновременно, поэтому значение, присвоенное в блоке, не может быть прочитано позже в том же блоке, если вы не используете задержанное расширение.
setlocal enableDelayedExpansion
set WORKSPACE=BEFORE
(
set WORKSPACE=AFTER
echo Normal Expansion = %WORKSPACE%
echo Delayed Expansion = !WORKSPACE!
)
Выводвыше
Normal Expansion = BEFORE
Delayed Expansion = AFTER
Используйте HELP SET
или SET /?
из командной строки для получения дополнительной информации о переменных среды Windows и различных параметрах расширения.Например, объясняется, как выполнять операции поиска / замены и подстроки.