我有一个使用jython2.1的应用程序,我需要运行外部应用程序,(现在让我们说一些.exe)。我还需要捕获输入和输出,例如来自该程序的日志。
Jython 2.1似乎没有对popen()的支持。
除了依赖于标准的Java库之外,我还知道如何做到这一点?试着探索不同的方法。任何小小的建议对我来说都会有很大的帮助!
答案 0 :(得分:1)
您可以使用Java的类来执行此操作。
from java.lang import Runtime
process = Runtime.getRuntime().exec("ls -l")
output = process.getInputStream() # process' output is our input
# read output somehow, while the process is generating it
答案 1 :(得分:0)
你使用jython 2.1的原因是什么?我的意思是,它很古老 - 它是10年前发布的 - 你甚至都找不到它的下载/文档了。
10年是软件开发的一段时间。
最新版本似乎支持subprocess
module,这是执行子流程和捕获输出的当前python方式。