http://qs321.pair.com?node_id=1058196


in reply to using fork

Are you sure you need fork at all? If you don't have anything to do while the backup process is doing its thing or you don't need the separate process as a safety feature (for example to check if the process completed) then you don't need it.

If yes, the layout of your script depends also on why you need it. I'll just assume you need it for the latter reason, i.e. to monitor execution.

Then the backup script goes where "sleep 30" is at the moment. Then either duplicate and append the whole script for the next command or if there are more than two or a variable number of commands put this whole script into a loop. Also you need a noblocking version of waitpid so that you really can monitor the child process instead of hanging indefinitely. See the documentation to waitpid

Now if you want more comfort you should take a look at some of the powerful modules that handle all the details of forking, for example Parallel::ForkManager