Axel Koehler <ax**********@tu-berlin.de> wrote in message news:<kp************@rosebud.gp.tu-berlin.de>...
Hallo,
I want to start an extern program and simple stop it, after a
given time, if not succesfull finished.
OS is Linux
Axel
You could try the Pexpect library.
http://pexpect.sourceforge.net/
It allows you to start an external program and then wait for a given result
with a given timeout. Pexpect has a default timeout of 30 seconds, but
you can change that. The result that you are looking for can be
any string that you expect in the output. The string can be a
regular expression pattern. So you could write code like this:
import pexpect
child = pexpect.spawn ('my_external_program', timeout=120) # Two minute timeout.
index = p.expect (['results_you_are_looking_for', pexpect.TIMEOUT])
if index == 0:
do_something ()
elif index == 1:
child.kill (9)
child.close ()
Yours,
Noah