I am writing a shell script for a couple of long running processes.
First of all I need to run all commands in the screen session manager, so that the execution of a process does not end if a user has been disconnected.
Later I need wait for some background processes, which has been created before, to end, so that the following process can start.
My question is how to start a screen session in a shell script and wait for the background processes to end.
You can’t invoke
screen(ornohup) on the running process, you have to doscreen script. You could however do what nohup does, trap SIGHUP and redirect output to a file.To wait for background processes, save the pid when you create it and then call wait
Or alternatively just wait for everything to finish.