У меня есть строка параметра, прочитанная из файла свойств.Одно из свойств показано ниже:
"CUSTOM_JAVA_OPTIONS=-Dhttp.proxyHost=webcache.example.com -Dhttp.proxyPort=8080"
Мне нужно разделить эту строку при первом появлении «=» и установить параметр со значением:
-Dhttp.proxyHost=webcache.example.com -Dhttp.proxyPort=8080
Япопытка сначала разбить строку на токене =, а затем удалить токен подстроки fist из исходной строки.В приведенном ниже коде %% G будет установлен в «CUSTOM_JAVA_OPTIONS», и я пытаюсь удалить это из исходной строки «TESTSTR»
@echo off
set "TESTSTR=CUSTOM_JAVA_OPTIONS=-Dhttp.proxyHost=webcache.example.com
-Dhttp.proxyPort=8080"
SETLOCAL ENABLEDELAYEDEXPANSION
FOR /F "tokens=1,2 delims==" %%G IN ("%TESTSTR%") DO (
echo Name=%%G
echo Value=%%H
set removestr=%%G
echo TESTSTR=!TESTSTR!
echo removestr=!removestr!
set "str=!TESTSTR:%removestr%=!"
echo str=!str!
)
pause
Выше, кажется, не работает, он производит:
Name=CUSTOM_JAVA_OPTIONS
Value=-Dhttp.proxyHost
TESTSTR=CUSTOM_JAVA_OPTIONS=-Dhttp.proxyHost=webcache.example.com -Dhttp.proxyPort=8080
removestr=CUSTOM_JAVA_OPTIONS
str=TESTSTR:=
Ожидаемый результат должен быть:
str=-Dhttp.proxyHost=webcache.example.com -Dhttp.proxyPort=8080