在Python子过程中,我看不到运行jar文件的批处理文件中的任何内容

时间:2018-09-13 00:34:38

标签: python subprocess

我已经完成了在子流程中运行批处理文件的逻辑,并且可以正常工作。

query = 'C:/val/start.bat'
process = subprocess.Popen(query, shell=False, stdout=subprocess.PIPE)

cmd窗口出现并运行良好,但是我看不到任何需要打印的日志。

当我直接从Windows运行批处理文件时,通常会生成日志。

批处理文件调用并执行jar文件。

@echo off
"%JAVA_HOME%\bin\java" -Dfile.encoding=utf-8 -Djava.file.encoding=UTF-8 -jar -Xms1024m -Xmx1024m C:\val\val.jar
pause>nul

您能告诉我问题出在哪里以及如何解决吗?

1 个答案:

答案 0 :(得分:0)

您需要获取输出。

import subprocess

process = subprocess.Popen('command', stdout=subprocess.PIPE)

process.wait()

result = process.stdout.read()