다음과 같은 상황에서는 왜 huponexit가 작동하지 않나요?

다음과 같은 상황에서는 왜 huponexit가 작동하지 않나요?

Bash 매뉴얼에 따르면

huponexit 쉘 옵션이 shopt를 사용하여 설정된 경우(62페이지 섹션 4.3.2 [내장 Shopt] 참조) Bash는 대화형 로그인 쉘이 종료될 때 모든 작업에 SIGHUP을 보냅니다.

다음과 같은 상황에서는 왜 huponexit가 작동하지 않나요?

대화형 쉘에서

$ shopt -s huponexit
$ sleep 4321 &
[1] 13816
$ exit

그런 다음 다른 쉘에서

$ ps -j 13816
  PID  PGID   SID TTY      STAT   TIME COMMAND
13816 13816 13728 ?        S      0:00 sleep 4321

감사해요.

답변1

상호작용할 때로그인쉘 종료

중요하다.

$ bash -l
$ shopt -s huponexit
$ sleep 120 &
[1] 24235

그런 다음 CtrlD종료하십시오 ( 귀하의 예와는 달리 사용) logout.exit

$ ps -j 24235
  PID  PGID   SID TTY      STAT   TIME COMMAND

상대방 sleep도 사망했습니다.

관련 정보