I know nothing about Jenkins, but it looks like you are trying to access environment variables using some form of unix syntax - that won't work.
If the name of the variable is WORKSPACE, then the value is expanded in Windows batch using
`%WORKSPACE%`. That form of expansion is performed at parse time. For example, this will print to screen the value of WORKSPACE
echo %WORKSPACE%
If you need the value at execution time, then you need to use delayed expansion `!WORKSPACE!`. Delayed expansion is not normally enabled by default. Use `SETLOCAL EnableDelayedExpansion` to enable it. Delayed expansion is often needed because blocks of code within parentheses and/or multiple commands concatenated by `&`, `&&`, or `||` are parsed all at once, so a value assigned within the block cannot be read later within the same block unless you use delayed expansion.
setlocal enableDelayedExpansion
set WORKSPACE=BEFORE
(
set WORKSPACE=AFTER
echo Normal Expansion = %WORKSPACE%
echo Delayed Expansion = !WORKSPACE!
)
The output of the above is
Normal Expansion = BEFORE
Delayed Expansion = AFTER
Use `HELP SET` or `SET /?` from the command line to get more information about Windows environment variables and the various expansion options. For example, it explains how to do search/replace and substring operations.