, Python subprocess.
- , , :
import subprocess, shlex
def captcmd(cmd):
proc = subprocess.Popen(shlex.split(cmd), \
stdout=subprocess.PIPE, stderr=subprocess.PIPE, shell=False)
out, err = proc.communicate()
ret = proc.returncode
return (ret, out, err)
... :
ok, o, e = captcmd('ls -al /foo /bar ...')
print o
if not ok:
print >> sys.stderr, "There was an error (%d):\n" % ok
print >> sys.stderr, e
... - .
. shlex.split() shell=True
, . , , , , (, captcmd(...)[1] ). , , stdout stderr . "" Backtick Perl. ( shlex.split(), - , Perl).