Output of pexpect
Lie Ryan
lie.1296 at gmail.com
Wed Oct 1 03:57:16 EDT 2008
On Tue, 30 Sep 2008 20:48:12 -0700, Anh Khuong wrote:
> I am using pexpect and I want to send output of pexpet to both stdout
> and log file concurrently. Anybody know a solution for it please let me
> know.
One way is to create a file-like object that forked the output to stdout
and the logfile.
class forkwriter(object):
def __init__(self, filename):
self.file = open(filename, 'w')
def write(self, s):
sys.stdout.write(s)
self.file.write(s)
I've never used pexpect myself though, but if pexpect write things to the
to the stdout, then you can redirect stdout
import sys
sys.stdout = forkwriter('mylog.log')
(note: the forkwriter class would have to be modified a bit to use the
"background" sys.__stdout__ instead of sys.stdout)
More information about the Python-list
mailing list