On Tue, Jul 6, 2010 at 6:40 AM, Michael Torrie <torr...@gmail.com> wrote: > On 07/06/2010 04:12 AM, sturlamolden wrote: >> On 28 Jun, 19:39, Michael Torrie <torr...@gmail.com> wrote: >>> In python I could simply take the output of "ps ax" and use python's >>> own, superior, cutting routines (using my module): >>> >>> (err, stdout, stderr) = runcmd.run( [ 'ps', 'ax' ] ) >>> for x in stdout.split('\n'): >>> print x.strip().split()[0] >> >> Or you just pass the stdout of one command as stdin to another. That >> is equivalent of piping with bash. > > Consider this contrived example: > > tail -f /var/log/messages | grep openvpn > > While it's possible to set up pipes and spawn programs in parallel to > operate on the pipes, in practice it's simpler to tell subprocess.Popen > to use a shell and then just rely on Bash's very nice syntax for setting > up the pipeline.
Until there's a Python variable involved that is, unless you want to overlook all the edge cases or do the escaping all by yourself (and then pray you did it right). Cheers, Chris -- http://blog.rebertia.com -- http://mail.python.org/mailman/listinfo/python-list