Solved

Blat question:  Does anyone know how to insert carriage return/line feeds in a test string.

Posted on 2010-09-08
9
1,152 Views
Last Modified: 2012-06-28
I have these variables set in a batch file:

Set BodyLine1="...."
Set BodyLine2="...." etc.
...up to 5.

At some point in the script I issue the command:

Blat -body "%BodyLine1%%BodyLine2%%BodyLine3%...", which works, but strings the text lines together, as expected.  Can I store a CRLF character in a variable and insert it between the lines in the string?  If so, how?

Thank you.
0
Comment
Question by:Randy_R
  • 3
  • 2
  • 2
  • +2
9 Comments
 
LVL 4

Expert Comment

by:HRL
ID: 33627998
concatenate the string as follows:
%STring1% + Char(13) + Char(10) + %String2% + ....
0
 

Author Comment

by:Randy_R
ID: 33628136
What I get back is this:

1 + Char(13) + Char(10) + 2 + Char(13) + char(10) + 3 + CHar(13)+Char(10) + 4 + Char(13) + Char(10) + 5

my variables are expanded properly but not the CR/LF.  I tried enclosing the entire string in quotes but it didn't help.
0
 
LVL 15

Expert Comment

by:mish33
ID: 33628336
Try embed newlines into the strings like

Set BodyLine1="....\r\n"
0
DevOps Toolchain Recommendations

Read this Gartner Research Note and discover how your IT organization can automate and optimize DevOps processes using a toolchain architecture.

 

Author Comment

by:Randy_R
ID: 33628390
Nope.  Just takes them as additional string characters.
0
 
LVL 53

Accepted Solution

by:
Bill Prew earned 500 total points
ID: 33628564
I think what you need to do is write your body lines to a text file first, and then on the blat command line pass in the name of that file, rather than the -body option.  So something like:

echo Sample Line 1>body.txt
echo Sample Line 2>>body.txt
echo Sample Line 3>>body.txt

blat "body.txt" -to ...

~bp
0
 
LVL 15

Expert Comment

by:mish33
ID: 33628573
0
 

Author Comment

by:Randy_R
ID: 33628746
That did it bp!  Thanks!
0
 
LVL 53

Expert Comment

by:Bill Prew
ID: 33628782
Great, glad that was helpful, thanks.

~bp
0
 
LVL 33

Expert Comment

by:knightEknight
ID: 38136322
You can use string substitution and a little known trick to achieve this.  For example, let's say you want to use \n to represent your new line characters:


set nltest=This is\na new\nline test.
echo %nltest:\n=&echo.%
0

Featured Post

DevOps Toolchain Recommendations

Read this Gartner Research Note and discover how your IT organization can automate and optimize DevOps processes using a toolchain architecture.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Sometimes drives fill up and we don't know why.  If you don't understand the best way to use the tools available, you may end up being stumped as to why your drive says it's not full when you have no space left!  Here's how you can find out...
An article on effective troubleshooting
Windows 10 is mostly good. However the one thing that annoys me is how many clicks you have to do to dial a VPN connection. You have to go to settings from the start menu, (2 clicks), Network and Internet (1 click), Click VPN (another click) then fi…
Get a first impression of how PRTG looks and learn how it works.   This video is a short introduction to PRTG, as an initial overview or as a quick start for new PRTG users.

803 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question