En Tue, 14 Oct 2008 10:46:34 -0300, Stef Mientki <[EMAIL PROTECTED]>
escribió:
well the command prompt (if it is called that way in Linus) is not
returned.
When I run file_support, the command window looks like this
>>>python file_support.py
..... all kinds of output
>>>
When I run test.py (which calls fie_support) , I get this
>>>python test.py
.... all kinds of output (the same as before)
Now I've to explicitly press an enter to get the command prompt back.
ok It seems to be solved now,
In creating a small example to emphasize the problem,
I found the difference between Win and Linux:
In windows "shell=True" and in Linux "shell=False"
PID = subprocess.Popen( arguments,
cwd = cwd ,
stdout = subprocess.PIPE,
stderr = subprocess.PIPE,
shell = ( os.name == 'nt') )
so the above statement seems (at least for the moment) solve all the
problems.
I'd say there is no problem. It just *appears* to be one. The first
program finishes, and the shell displays its prompt, while the child is
still outputting things. I bet you can see the [EMAIL PROTECTED]
somewhere in the output.
It's like executing:
$ ls&
the shell prompt is shown as soon as the ls (background) process starts,
but gets lost in the output.
Diez B. Roggisch wrote:
Additonally, you might want to check out the Popen-object-reference for
the
wait-call, but actually that shouldn't change anything with regards to
pressing enter or not.
Calling wait in the parent script would prevent it to finish before the
child, avoiding the issue.
--
Gabriel Genellina
--
http://mail.python.org/mailman/listinfo/python-list