Posted By: Anonymous
I need to assign the output of a program to a variable using a MS batch file.
So in GNU Bash shell I would use
VAR=$(application arg0 arg1). I need a similar behavior in Windows using a batch file.
set VAR=application arg0 arg1.
One way is:
application arg0 arg1 > temp.txt set /p VAR=<temp.txt
for /f %%i in ('application arg0 arg1') do set VAR=%%i
Note that the first
%%i is used to escape the
% after it and is needed when using the above code in a batch file rather than on the command line. Imagine, your
test.bat has something like:
for /f %%i in ('c:cygwin64bindate.exe +"%%Y%%m%%d%%H%%M%%S"') do set datetime=%%i echo %datetime%