background scripts run-help

Looking for a logic where say i have a script called parent_script which is used to call other 4 to 5 child scripts in background as..

cat parent_script # containing 65 lines 
1
2
..
35 while read child_script
36 do
37 ./child_script_name&
38 done< ${SCRIPT_LISTS}
39
40 # Need to have some logic here such that the parent_script waits until all the child scripts completed execution
41
..# some other codes here
65

As you would know once the values in variable SCRIPT_LISTS rans out the parent script comes out of the while-loop and start processing the subsequent lines. I need to keep a logic such that parent_script waits until all the jobs running in the background completes execution and only then have to process the remaining lines from # 39-65.
Had an idea of sleep command but im not sure whether we could use sleep to wait..until.. some process completes because to this command we need to pass arg in seconds or minutes rather than asking it to wait..until.
Pls throw some of ur ideas and let me know if i need to be more clearer in my requirement.

If you are using ksh, then the wait command without any options will wait until all asynch jobs have completed.

From the ksh manual page:
wait [ job . . . ]
Wait for the specified job and report its termination status. If job is not given, then all currently active child processes are waited for. The exit status from this command is that of the last process waited for if job is specified; otherwise it is zero. See Jobs for a description of the format of job.

The whole page is at:
Kshell Man Page

Bash's wait command operates in a similar fashion, however the return status from is very different than in Kshell, so if you are using bash, make sure you understand what it returns.

Thank you for the suggestion. i will check on it.