Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Passing around multi-line strings

I'm trying to create a batch file which passes around a string with line feeds in it but its not working out. The continuation of the string is executed as a new command.

Is there anyway to encode a line feed or make this work?

like image 990
chief7 Avatar asked Aug 12 '11 13:08

chief7


1 Answers

You can create directly multiline strings with the caret (one empty line is required).

setlocal EnableDelayedExpansion set multiLine=This is a ^  multiline text^  line3 echo !multiLine! 

Or you can create first a newline character.

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

An explanation how this works can be found at Explain how dos-batch newline variable hack works

like image 112
jeb Avatar answered Oct 01 '22 11:10

jeb