os.system stdout redirection [to PyQt window]

Donn Cave donn at drizzle.com
Sun Aug 17 12:51:27 EDT 2003


Quoth mackstann <mack at incise.org>:
| On Sun, Aug 17, 2003 at 01:01:41AM -0500, Terry Gray wrote:
|> Using Python 2.2 in Debian linuxI am trying to change to a different 
|> directory, execute a 'make all' command, and redirect the output of the 
|> subshell to a PyQt window...  I should be able to execute the 
|> os.system('cd newdirectory; make all'), but how do I redirect stdout of 
|> the new subshell created by the os.system call?

| You can use os.popen (popen2 and 3 as well), or the popen2 module's
| Popen3 and 4 classes, or commands.getoutput (and there are probably even
| more ways :).

Yes, very good, there are many ways to redirect output, but you
need to know how to make PyQt monitor a file and copy it to a window
before it matters much either way.

I don't know, so I've changed the subject line, replacing the elipsis
("..." - what was that for?) with [to PyQt window] to attract the
attention of someone who might have a clue.

Do you need to write this output line by line as it comes out of make?
Or would it be fine to run make, and then wait to present all the output
after it's finished?  The latter is likely to be significantly easier.

    # make output goes to both units 1 and 2 (output and error/diagnostic)
    os.system('cd newdirectory; make all > make.log 2>&1')
    displayfile('newdirectory/make.log')

	Donn Cave, donn at drizzle.com




More information about the Python-list mailing list