Как запустить GDB в фоновом режиме и вернуть его обратно?

Я пишу сценарии bash, которые запускают тестовые сценарии: несколько программ, которые соединяются друг с другом.

Если что-то разбилось, я бы хотел иметь командную строку GDB.

Выглядит примерно так:

myprogram <(cat <<-EOM [conf] par = abc EOM ) &>>"$3" & sleep 1 grep -q DATA <(timeout 5 myclient http://url | tee -a "$3") && exit 0 sleep 5& wait %+ exit 1 

Я попытался запустить с gdb с самого начала (используя sleep в качестве примера приложения):

 gdb -ex run --args sleep 30 & 

А потом:

 fg 

fg не возвращает его должным образом: ничего не набирать, SIGINT странно, оболочка говорит, что задание остановлено. Написание fg внутри скрипта дает ошибку fg: no job control .

Есть ли способ?