En Mon, 23 Apr 2007 13:10:55 -0300, CSUIDL PROGRAMMEr <[EMAIL PROTECTED]> escribió:
> I am new to python. so be patient with me > > I am trying to redirect the output of os.popen command to a file. I > want to append to that file. but instead of appending. The file only > shows last command that was writtenn to it. > > > > filehandle= open("/root/yhpc-2.0/installer/yhpc-log" ,"a+"); > filehandle.write(" Command executed is " + cmd); > try: > pipe= os.popen('%s > /root/yhpc-2.0/installer/yhpc-log' %cmd ); > except : IOError; > filehandle.close(); There are two ways to redirect the output: - using the shell, with > and >> - using popen You are mixing both here. Your command line uses >xxx-log, thus efectively overwriting any previous content on the log file. You could do this: logfile = open("....", "a+) logfile.write("Command: %s\n" % cmd) pipe = os.popen(cmd) for line in pipe: logfile.write(line) pipe.close() logfile.close() Or try the subprocess module. -- Gabriel Genellina -- http://mail.python.org/mailman/listinfo/python-list