mirror of
https://github.com/python/cpython.git
synced 2025-08-04 00:48:58 +00:00
- changed the nt.popen2 return values back to
(write, read, ...), based on feedback from GvR. - added tuple-swapping code to popen2.py - fixed some runaway indentation in posixmodule.c
This commit is contained in:
parent
0466132ee4
commit
9ac81f69b2
2 changed files with 55 additions and 40 deletions
|
@ -89,9 +89,14 @@ class Popen3:
|
|||
_active.remove(self)
|
||||
return self.sts
|
||||
|
||||
try:
|
||||
from os import popen2
|
||||
except NameError:
|
||||
if hasattr(os, "popen2"):
|
||||
def popen2(cmd, mode='t', bufsize=-1):
|
||||
"""Execute the shell command 'cmd' in a sub-process. If 'bufsize' is
|
||||
specified, it sets the buffer size for the I/O pipes. The file objects
|
||||
(child_stdout, child_stdin) are returned."""
|
||||
w, r = os.popen2(cmd, mode, bufsize)
|
||||
return r, w
|
||||
else:
|
||||
def popen2(cmd, mode='t', bufsize=-1):
|
||||
"""Execute the shell command 'cmd' in a sub-process. If 'bufsize' is
|
||||
specified, it sets the buffer size for the I/O pipes. The file objects
|
||||
|
@ -104,9 +109,14 @@ except NameError:
|
|||
inst = Popen3(cmd, 0, bufsize)
|
||||
return inst.fromchild, inst.tochild
|
||||
|
||||
try:
|
||||
from os import popen3
|
||||
except NameError:
|
||||
if hasattr(os, "popen3"):
|
||||
def popen3(cmd, mode='t', bufsize=-1):
|
||||
"""Execute the shell command 'cmd' in a sub-process. If 'bufsize' is
|
||||
specified, it sets the buffer size for the I/O pipes. The file objects
|
||||
(child_stdout, child_stdin, child_stderr) are returned."""
|
||||
w, r, e = os.popen3(cmd, mode, bufsize)
|
||||
return r, w, e
|
||||
else:
|
||||
def popen3(cmd, mode='t', bufsize=-1):
|
||||
"""Execute the shell command 'cmd' in a sub-process. If 'bufsize' is
|
||||
specified, it sets the buffer size for the I/O pipes. The file objects
|
||||
|
@ -119,10 +129,15 @@ except NameError:
|
|||
inst = Popen3(cmd, 1, bufsize)
|
||||
return inst.fromchild, inst.tochild, inst.childerr
|
||||
|
||||
try:
|
||||
from os import popen4
|
||||
except NameError:
|
||||
pass # not on unix
|
||||
if hasattr(os, "popen4"):
|
||||
def popen4(cmd, mode='t', bufsize=-1):
|
||||
"""Execute the shell command 'cmd' in a sub-process. If 'bufsize' is
|
||||
specified, it sets the buffer size for the I/O pipes. The file objects
|
||||
(child_stdout_stderr, child_stdin) are returned."""
|
||||
w, r = os.popen4(cmd, mode, bufsize)
|
||||
return r, w
|
||||
else:
|
||||
pass # not yet on unix
|
||||
|
||||
def _test():
|
||||
teststr = "abc\n"
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue