Dear all I have tkinkter based frontend to a Fortran based program. I use subprocess to launch the fortran program as a child process and I wish to see the output of the fortran program as it is created in the console.
The fortran program can take up to 20 minuttes to finish and at the moment the I will first see any output after the fortran program is done. How make my function write the output of the process as it comes? def runprogram(Icommand, Ijobfile, Ioutput): if os.name == "posix": os.system(pythonpath+"/bin/"+Icommand+"< "+Ijobfile+" | tee "+Ioutput) elif os.name == "nt": import subprocess ofile = open(Ioutput, 'w') p = subprocess.Popen([os.path.join(pythonpath, "bin", Icommand + '.exe')], stdin=open(Ijobfile, "rb"),bufsize=1024,shell=False, stdout=subprocess.PIPE) while p.poll() is None: #Check if child process has terminated. o = p.stdout.readline() ofile.writelines(o) print o, ofile.close Kind regards Thomas Jansson -- http://mail.python.org/mailman/listinfo/python-list