bash 대화형 셸에서 신호 처리기를 설정하기 위해 trap
명령(예: trap "echo You hit control-C!" INT
)을 실행하면 bash 대화형 셸이 신호를 처리하는 방식이 설정됩니까?
내가 설정한 핸들러를 사용하여 bash 대화형 쉘이 신호를 처리하는지 여부를 어떻게 테스트합니까 trap
?
즉, 생성된 신호를 테스트할 수 있습니까?
- Bash 대화식 쉘에서?
- 쉘에서 실행되는 터미널 에뮬레이터에서?
아니면 bash 대화형 셸이나 터미널 에뮬레이터 외부에서 테스트해야 합니까?
감사해요.
답변1
kill
다음을 사용하여 현재 쉘에 신호를 보내 핸들러가 설정된 쉘 내에서 핸들러를 테스트할 수 있습니다.
kill -INT $$
-INT
테스트하려는 트랩과 일치하도록 변경하십시오 .