rvosa has asked for the wisdom of the Perl Monks concerning the following question:
Dear monks,
I need to launch a separate executable and record its process ID (on a linux cluster) so I can kill it later on, if need be. The way I've been doing this is by using open:
Thank you.
I need to launch a separate executable and record its process ID (on a linux cluster) so I can kill it later on, if need be. The way I've been doing this is by using open:
The problem is that sometimes 'command' spits out a lot of stdout messages, causing a broken pipe on $handle. I'm not really interested in those stdout messages anyway ('command' writes an output file that I'll parse instead) so the only reason I'm using 'open()' is that it gives me the $pid, which 'system()' and 'exec()' don't do. Is there a better way to get the $pid? Without the broken pipe?my $handle = IO::Handle->new; my $pid = open($handle, 'command & |') or die $!;
Thank you.
|
---|
Replies are listed 'Best First'. | |
---|---|
Re: Launch process, get PID
by pc88mxer (Vicar) on Feb 28, 2008 at 23:26 UTC | |
by rvosa (Curate) on Feb 29, 2008 at 03:04 UTC | |
Re: Launch process, get PID
by mr_mischief (Monsignor) on Feb 29, 2008 at 00:32 UTC | |
Re: Launch process, get PID
by runrig (Abbot) on Feb 28, 2008 at 23:23 UTC | |
Re: Launch process, get PID
by dcparham (Initiate) on Dec 02, 2014 at 03:41 UTC |
Back to
Seekers of Perl Wisdom