запуск внешних команд с контролем над вводом / выводом в jython 2.1 - PullRequest
1 голос
/ 11 января 2011

У меня есть приложение, использующее jython2.1, и мне нужно запускать внешние приложения (скажем, пока немного .exe). Мне также нужно захватить ввод и вывод, такие как журналы из этой программы.

Jython 2.1, похоже, не поддерживает popen ().

Любая идея, как мне это сделать, кроме зависимости от стандартных библиотек Java? Просто пытаюсь исследовать разные способы сделать это. Любое маленькое предложение очень помогло бы мне, ребята !!

Ответы [ 2 ]

1 голос
/ 11 января 2011

Вы можете просто использовать классы 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
0 голосов
/ 11 января 2011

По какой причине вы используете Jython 2.1?Я имею в виду, что он древний - он был выпущен 10 лет назад - вы даже не можете найти для него загрузку / документацию.

10 лет - это долгое время в разработке программного обеспечения.

Новейшая версиякажется, поддерживает subprocess модуль , который является текущим способом Python для выполнения подпроцесса и захвата вывода.

...