Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/batch-file/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Batch file 将Windows Batch命令输出发送到变量_Batch File - Fatal编程技术网

Batch file 将Windows Batch命令输出发送到变量

Batch file 将Windows Batch命令输出发送到变量,batch-file,Batch File,我在Windows批处理文件中有以下内容 my_app < "%%PARAMETER_FOR_APP" my\u app>%LOG\u文件\u名称% 我希望创建一个变量,COMMAND\u OUTPUT,然后可以将其与eccho命令一起使用。而是在文件系统上创建一个空文件,COMMAND\u OUTPUT 正确的方法是什么?是在批处理文件中获取命令输出的标准方法。 在您的情况下,还需要使用^ for /f "tokens=* delims=" %%# in ('my_app ^<

我在Windows批处理文件中有以下内容

my_app < "%%PARAMETER_FOR_APP" 
my\u app<“\u app的%%PARAMETER\u”
应用程序成功执行,并向控制台输出三行代码

我希望捕获该输出,以便能够将其保存到日志文件中

我正在尝试:

set LOG_FILE_NAME = mylog.log
my_app < "%%PARAMETER_FOR_APP" > COMMAND_OUTPUT
echo %COMMAND_OUTPUT%
echo %COMMAND_OUTPUT% >> %LOG_FILE_NAME%
set LOG\u FILE\u NAME=mylog.LOG
我的\u应用程序<“%%参数\u用于\u应用程序”>命令\u输出
回显%命令输出%
echo%命令\u输出%>>%LOG\u文件\u名称%
我希望创建一个变量,
COMMAND\u OUTPUT
,然后可以将其与eccho命令一起使用。而是在文件系统上创建一个空文件,
COMMAND\u OUTPUT

正确的方法是什么?

是在批处理文件中获取命令输出的标准方法。 在您的情况下,还需要使用
^

for /f "tokens=* delims=" %%# in ('my_app ^< "%%PARAMETER_FOR_APP" ') do set "COMMAND_OUTPUT=%%#"
for/f“tokens=*delims=“%%#in('my_app^<“%%PARAMETER_for_app””)设置“COMMAND_OUTPUT=%%”

尝试此操作。

日志文件名设置为什么?请参阅更新的问题可能的重复项可能会受益于对发生的情况进行更多的扩展。