Hi,
I am using Popen to run a command but I don't know how I can write a callback that gets called once the command is finished. Any idea?
Thanks. Bin
Hi,
I am using Popen to run a command but I don't know how I can write a callback that gets called once the command is finished. Any idea?
Thanks. Bin
You can call communicate()
:
p = subprocess.Popen('find . -name "*.txt"', stdout=subprocess.PIPE, stderr=subprocess.PIPE)
stdout, stderr = p.communicate()
You can also call wait()
, but this might cause problems if the child process fills its output buffer.
You could use p.poll() method of the Popen object.
http://docs.python.org/library/subprocess.html#subprocess.Popen.poll