バックグラウンドでGDBをどのように実行して再開できますか?

バックグラウンドで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

どのような方法がありますか?

関連情報