The trouble is that FOR iterates on each line of the command output,
so if you log message is a multiline message, "SET LOG=%%G" will be
called for each line of the log message
You could do something like this:
@ECHO OFF
SET SVNLOOK=C:\Programs\Subversion\bin\svnlook
SET REV=94
SET REPOS="d:\project"
SET MSG=
GOTO message
:concat
IF "z%MSG%"=="z" (SET MSG=%*) ELSE (SET MSG=%MSG% %*)
GOTO :eof
:message
FOR /F "tokens=* delims== eol=;" %%G IN ('%SVNLOOK% log -r %REV%
%REPOS%') DO CALL :concat %%G
ECHO Message: %MSG%
Although this syntax discards the line break and replace them with
space characters.
I really have no idea about how to deal with LF with the M$
interpreter. Batch file syntax is simply ugly.
Cheers,
Manu
_______________________________________________
Trac mailing list
[email protected]
http://lists.edgewall.com/mailman/listinfo/trac