백그라운드에서 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.

어떤 방법이 있나요?

관련 정보