Using subprocess module to launch a shell shell script that itself forks a process
Sean DiZazzo
half.italian at gmail.com
Wed Oct 8 14:54:12 EDT 2008
On Oct 8, 11:24 am, "Samuel A. Falvo II" <sam.fa... at gmail.com> wrote:
> On Oct 7, 6:23 pm, "Gabriel Genellina" <gagsl-... at yahoo.com.ar> wrote:
>
> > Is your shell script doing something else, apart from invoking the java
> > process?
>
> Obviously, yes. The script is some 150 lines long. But the hang-up
> occurs because of the forked Java process, not the other lines.
>
> > If not, you could just invoke java directly from Python. Also,
> > you set stdin=PIPE - is your java process expecting some input? you're not
> > writing anything to stdin.
>
> It does not expect input from stdin. However, this does not affect
> any OTHER scripts or commands I run.
>
> Let's remember to look at the objective facts: for shell scripts that
> launch child processes of their own, Python hangs. For all other
> types of commands, it works 100% as expected.
>
> > Anyway, it's better to use the communicate method instead (it uses select
> > to read from both stdout and stderr):
>
> That doesn't help me.
>
> > See http://docs.python.org/library/subprocess.html#subprocess.Popen.commu...
>
> I have.
You should be nicer to Gabriel. He is a guru.
More information about the Python-list
mailing list