Home | Trees | Index | Help |
|
---|
Package CedarBackup2 :: Module util :: Class Pipe |
|
Popen3
--+ |Popen4
--+ | Pipe
Specialized pipe class for use by executeCommand
.
The executeCommand
function needs a specialized
way of interacting with a pipe that isn't satisfied by the standard
Popen3
and Popen4
classes in
popen2
. First, executeCommand
only reads from
the pipe, and never writes to it. Second, executeCommand
needs a way to discard all output written to stderr
, as a
means of simulating the shell 2>/dev/null
construct.
This class inherits from Popen4
. If the
ignoreStderr
flag is passed in as False
, then
the standard Popen4
constructor will be called and
stdout
and stderr
will be intermingled in the
output.
Otherwise, we'll call a custom version of the constructor which was
basically stolen from the real constructor in
python2.3/Lib/popen2.py
. This custom constructor will
redirect the stderr
file descriptor to
/dev/null
. I've done this based on a suggestion from Donn
Cave on comp.lang.python.
In either case, the tochild
file object is always closed
before returning from the constructor, since it is never needed by
executeCommand
.
popen2
module members
_cleanup
and _active
in order to duplicate the
implementation. Hopefully that will continue to work. :(
Copyright: Some of this code, prior to customization, was originally part of the Python 2.3 codebase. Python code is copyright (c) 2001, 2002 Python Software Foundation; All Rights Reserved.
Method Summary | |
---|---|
__init__(self,
cmd,
bufsize,
ignoreStderr)
| |
Inherited from Popen3 | |
Return the exit status of the child process if it has finished, or -1 if it hasn't finished yet. | |
Wait for and return the exit status of the child process. | |
|
Class Variable Summary | |
---|---|
Inherited from Popen4 | |
NoneType |
childerr = None |
Inherited from Popen3 | |
int |
sts = -1 |
Home | Trees | Index | Help |
|
---|
Generated by Epydoc 2.1 on Thu Dec 22 20:45:13 2005 | http://epydoc.sf.net |