.файл bat для создания сложной строковой переменной со специальными символами

мне нужно создать одну строковую переменную, объединив несколько строк. Последняя строка мне нужна, как показано ниже

<Workspace name="RealTimeRiskUSD_UA" path="C:\workspace" IsAdmin="false" />

это то, что я пробовал.

echo off
set path1="<Workspace "
set name="name="RealTimeRiskUSD_UA"" 
set path2="path="C:\workspace" IsAdmin="false" />"
set fullpath=%path1%%name%%path2%
echo %path1%
echo %name%
echo %path2%
echo %fullpath%

Я также попытался использовать ссылку ниже, чтобы удалить двойные кавычки из каждой строки, но не работает
http://ss64.com/nt/syntax-esc.html

1 ответов


вы можете использовать расширенный синтаксис SET. установите "var=content".

Это экранирует специальные символы, но кавычки не являются частью строки.

echo off
Setlocal EnableDelayedExpansion
set "path1=<Workspace " 
set "name=name="RealTimeRiskUSD_UA"" 
set "path2=path="C:\workspace" IsAdmin="false" />" 
set "fullpath=%path1%%name%%path2%"
echo !fullpath!