<div dir="ltr">Thanks for the help! Based on it I tried running the command with python as follows:<br><br><div style="margin-left: 40px; font-family: courier new,monospace;">import subprocess<br><br>pipe = subprocess.Popen("do_slow_command 2>&1",<br>
bufsize=1,<br> stdout=subprocess.PIPE,<br> stdin=subprocess.PIPE,<br> shell=True)<br><br>for p in pipe.stdout.readlines():<br> print p,"<br>\n"<br><br></div>According to the subprocess documentation, this is supposed to set up line by line mode. But I still get things buffered up. But perhaps that is because I did not tell "do_slow_command" to flush after print command, and it senses that it is not being run under a terminal? I'll try that.<br>
<br>Dov<br><br><br><div class="gmail_quote">On Mon, Dec 27, 2010 at 20:08, ik <span dir="ltr"><<a href="mailto:idokan@gmail.com">idokan@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
<div dir="ltr"><div class="gmail_quote">2010/12/27 shimi <span dir="ltr"><<a href="mailto:linux-il@shimi.net" target="_blank">linux-il@shimi.net</a>></span><div><div></div><div class="h5"><br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
<div dir="ltr"><br><br><div class="gmail_quote"><div>2010/12/27 Dov Grobgeld <span dir="ltr"><<a href="mailto:dov.grobgeld@gmail.com" target="_blank">dov.grobgeld@gmail.com</a>></span><br></div><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
<div dir="ltr">I'm trying to write a cgi wrapper for a long running command. The command takes about 10minutes to execute and when running it from the command line it continously outputs text to stdout. A simplistic cgi-bin wrapper that tries to execute the script and then writes that it is done fails with the following message:<div>
<div></div><div><br>
<br> Timeout waiting for output from CGI script ...<br><br>What I wonder if there is any easy way to have continously update the web page with stdout of the script. <br><br>One way, I guess would be to run the script in a separate thread and just do HTML reload on a static page which I would regenaret with the stdout generated so far.<br>
<br>Is there any other simple solution?<br><br></div></div></div></blockquote><div><br>You could increase the timeout to be > running time of the script ...<br></div></div></div></blockquote></div></div><div><br>Do not forget that you also have timeout of the web browser that you can not control (you can not control the users themselves). <br>
</div><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;"><div dir="ltr"><div class="gmail_quote"><div><br>-- Shimi<br></div></div></div></blockquote>
<div><br>Ido<br> <br></div><div class="im"><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;"><div dir="ltr"><div class="gmail_quote"><div></div>
</div><br></div>
<br>_______________________________________________<br>
Linux-il mailing list<br>
<a href="mailto:Linux-il@cs.huji.ac.il" target="_blank">Linux-il@cs.huji.ac.il</a><br>
<a href="http://mailman.cs.huji.ac.il/mailman/listinfo/linux-il" target="_blank">http://mailman.cs.huji.ac.il/mailman/listinfo/linux-il</a><br>
<br></blockquote></div></div><br><div class="im"><br clear="all">LINESIP - Opening the source for communication<br><a href="http://www.linesip.com/" target="_blank">http://www.linesip.com</a><br><a href="http://www.linesip.co.il/" target="_blank">http://www.linesip.co.il</a><br>
<br></div></div>
</blockquote></div><br></div>