Обход многострочных строк - PullRequest
28 голосов
/ 12 августа 2011

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

Есть ли способ кодировать перевод строки или заставить это работать?

Ответы [ 2 ]

33 голосов
/ 12 августа 2011

Вы можете создавать непосредственно многострочные строки с помощью каретки (требуется одна пустая строка).

setlocal EnableDelayedExpansion
set multiLine=This is a ^

multiline text^

line3
echo !multiLine!

Или вы можете сначала создать символ новой строки.

setlocal EnableDelayedExpansion
set LF=^


rem Two empty lines are required
set multiLine=This is a!LF!multiline text!LF!line3
echo !multiLine!

Объяснение того, как это работает, можно найти в Объяснить, как работает хак с переменной новой строки dos-batch

0 голосов
/ 27 октября 2018

Расширение до Джеб ответ , Добавление! LF! ^ К каждой строке будет легко

setlocal EnableDelayedExpansion
set LF=^



set multiLine=This is a!LF!^
multiline text!LF!^
line3
echo !multiLine! 
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...