我有一个python进程在运行,有一个logger对象配置为在日志文件中打印日志。在
现在,我试图通过这个python
进程调用scala
脚本,方法是使用Python的subprocess
模块。在
subprocess.Popen(scala_run_command, stdout=subprocess.PIPE, shell=True)
问题是,无论何时python进程退出,它都会挂起shell,只有在显式地运行stty sane
命令之后,shell才会生效。我的猜测是,这是因为scala脚本输出到shell,因此shell挂起,因为它的stdout[其stdout中的某些内容导致shell失去理智]。在
出于同样的原因,我想尝试将scala run脚本的输出放在默认日志文件中,这似乎不是通过多种方式实现的。在
因此,查询可以归结为,如何在日志文件中的stdout
模块中运行shell命令的stdout
输出。即使有更好的方法来实现这一点,而不是{
代码的当前状态如下所示。在
^{pr2}$
使用
其次是
^{pr2}$然后}将包含来自子进程输出流的输出字节。然后可以记录
stdout
和{stdout
值。在相关问题 更多 >
编程相关推荐