run xterm -e without terminating

bash, execute, terminate, xterm

Solution

Use the `wait` built-in in you shell script. It'll wait until all the background jobs are finished.

Working Example:

#!/bin/bash
# Script to show usage of wait
sleep 20 &
sleep 20 &
sleep 20 &
sleep 20 &
sleep 20 &
wait

The output

sgulati@maverick:~$ bash test.sh
[1]   Done                    sleep 20
[2]   Done                    sleep 20
[3]   Done                    sleep 20
[4]-  Done                    sleep 20
[5]+  Done                    sleep 20
sgulati@maverick:~$ 

Problem

I want to run xterm -e file.sh without terminating. In the file, I'm sending commands to the background and when the script is done, they are still not finished. What I'm doing currently is: ``` (cd /myfolder; /xterm -ls -geometry 115x65 -sb -sl 1000) ``` and then after the window pops up ``` sh file.sh exit ``` What I want to do is something like: ``` (cd /myfolder; /xterm -ls -geometry 115x65 -sb -sl 1000 -e sh file.sh) ``` without terminating and wait until the commands in the background finish. Anyone know how to do that?

Original source