Beefy Boxes and Bandwidth Generously Provided by pair Networks
laziness, impatience, and hubris
 
PerlMonks  

Re: question about running a system and a perl function background

by hsinclai (Deacon)
on Dec 03, 2004 at 01:59 UTC ( [id://412017]=note: print w/replies, xml ) Need Help??


in reply to question about running a system and a perl function background

If you have to "go to a system call", you could do a simple way like below for each (by the way there's no error checking in there at all) - but it's highly dependent I would say on what process you'll be running out there and on its particular ways of possibly failing, that will more determine what you'd write.
use strict; my $joboutputfile = "/tmp/joboutputfile.out"; my $stuff; #run job qx!ls -al /var > $joboutputfile!; ( -e $joboutputfile ) && &checkerror; print $stuff; sub checkerror { return $stuff = qx!grep "spool" $joboutputfile!; }

  • Comment on Re: question about running a system and a perl function background
  • Download Code

Replies are listed 'Best First'.
Re^2: question about running a system and a perl function background
by Anonymous Monk on Dec 03, 2004 at 17:45 UTC
    In the above code, if the output file exists, then the checkerror function is called. But, is there a way I know when the process had been completed?

    This is because I need to wait for all four processes to finish before starting another 4 more simulataneously. And everytime I run 4 processes, they dump their output to the same files everytime.

    So,

    system 1, ("some process 1 > output1.txt"); system 1, ("some process 2 > output2.txt"); system 1, ("some process 3 > output3.txt"); system 1, ("some process 4 > output4.txt"); Then when I know each is completed, I check for error in those files: +If process 1 is completed, I'll check for error in output1.txt etc. W +hen all are completed, I call next set of 4 processes system 1, ("some process 5 > output1.txt"); system 1, ("some process 6 > output2.txt"); system 1, ("some process 7 > output3.txt"); system 1, ("some process 8 > output4.txt"); As seen above, the output files remain the same
    Thanks.

Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: note [id://412017]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others admiring the Monastery: (5)
As of 2025-05-23 20:58 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found

    Notices?
    erzuuliAnonymous Monks are no longer allowed to use Super Search, due to an excessive use of this resource by robots.