Решение, работающее для примера строки:
@echo off
set "Effective="
for /F "tokens=2 delims=%%) " %%I in ('%SystemRoot%\System32\find.exe /I "Effective" file.cfg') do set "Effective=%%I"
if defined Effective echo The effective value is: %Effective%
Это решение требует, чтобы строка в двойных кавычках не содержала пробел и не было пробела слева от пробела слева отзначение интереса.
Другое решение будет следующим:
@echo off
set "Effective="
for /F "tokens=2 delims=%%)," %%I in ('%SystemRoot%\System32\find.exe /I "Effective" file.cfg') do for /F %%J in ("%%I") do set "Effective=%%J"
if defined Effective echo The effective value is: %Effective%
Это решение работает также для строк без пробела и строк с одним или несколькими пробелами в любом месте, оставленном числоминтерес.Но строка в кавычках не должна содержать запятую.
Третье решение будет также работать с несколькими пробелами и запятыми, оставленными до интересующего числа.
@echo off
set "Effective="
for /F tokens^=3^ delims^=^" %%I in ('%SystemRoot%\System32\find.exe /I "Effective" file.cfg') do for /F "delims=%%), " %%J in ("%%I") do set "Effective=%%J"
if defined Effective echo The effective value is: %Effective%