bash가 종료되지 않습니다

bash가 종료되지 않습니다

나는 내 껍질로 몇 가지 일을 시도하고 있습니다. 여기에는 다음 명령이 포함됩니다.

kill $$

나는 쉘이 나를 로그아웃하고 스스로 종료할 것이라고 기대합니다. 그러나 반대로 bash는 변경되지 않습니다.

이유를 아시나요?
저는 이 명령을 다른 환경(archlinux, debian)에서 실행했습니다. 행동은 항상 동일합니다.

답변1

검색을 해보니 다음과 같은 말이 있습니다.

bash가 대화형일 때 트랩 없이 SIGTERM을 무시하고(Kill 0이 대화형 쉘을 종료하지 않도록) SIGINT를 포착하여 처리합니다(wait 내장이 중단 가능하도록). 모든 경우에 bash는 SIGQUIT를 무시합니다. 작업 제어가 적용되면 bash는 SIGTTIN, SIGTTOU 및 SIGTSTP를 무시합니다.

bash그래서 신호를 무시 하라고 간단하게 말할 수 있는 대화형 쉘이 있습니다 .

어쨌든, 도와주셔서 감사합니다!

답변2

쉘은 많은 신호를 캡처하며 이는 SIGTERM전송된 기본 신호에도 적용됩니다 kill.

실제로 쉘을 종료하려면 kill를 사용하십시오 kill -KILL $$.

관련 정보