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 si
In addition to the answer, you can't directly use output redirection operators in the set part of for
loop (e.g. if you wanna hide stderror output from a user and provide a nicer error message). Instead, you have to escape them with a caret character (^
):
for /f %%O in ('some-erroring-command 2^> nul') do (echo %%O)
Reference: Redirect output of command in for loop of batch script