[IPython-User] catching system call's output in notebook
Zoltán Vörös
zvoros@gmail....
Mon Feb 6 13:29:37 CST 2012
Julian and Thomas,
Thanks for the comments!
Cheers,
Zoltán
On 02/06/2012 08:22 PM, Thomas Kluyver wrote:
> On 6 February 2012 19:15, Julian Taylor <jtaylor.debian@googlemail.com
> <mailto:jtaylor.debian@googlemail.com>> wrote:
>
> use the subprocess module instead of os.system:
>
> import subprocess
> print subprocess.check_output(["./test"])
>
>
> To explain some more about the difference: when you do os.system, it's
> not capturing stdout/stderr from the new process. In the terminal,
> this works, because stdout and stderr just go directly to the
> terminal, without Python ever knowing about them. In the notebook, it
> doesn't, because the kernel can only forward stdout/stderr that it
> knows about.
>
> subprocess.check_output() captures stdout and returns it. If you need
> to capture stderr as well, refer to the docs:
> http://docs.python.org/library/subprocess#subprocess.check_output
>
> Thomas
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://mail.scipy.org/pipermail/ipython-user/attachments/20120206/069fa165/attachment.html
More information about the IPython-User
mailing list