728x90
반응형
질문 : Python에서 SIGINT를 어떻게 캡처합니까?
여러 프로세스와 데이터베이스 연결을 시작하는 Python 스크립트를 작성 중입니다.
가끔씩 Ctrl
+ C 신호로 스크립트를 죽이고 싶고 정리를하고 싶습니다.
Perl에서는 다음과 같이합니다.
$SIG{'INT'} = 'exit_gracefully';
sub exit_gracefully {
print "Caught ^C \n";
exit (0);
}
파이썬에서 이것과 유사하게하려면 어떻게해야합니까?
답변
다음과 같이 signal.signal
핸들러를 등록합니다.
#!/usr/bin/env python
import signal
import sys
def signal_handler(sig, frame):
print('You pressed Ctrl+C!')
sys.exit(0)
signal.signal(signal.SIGINT, signal_handler)
print('Press Ctrl+C')
signal.pause()
여기 에서 코드를 수정했습니다.
signal
에 대한 더 많은 문서는 여기 에서 찾을 수 있습니다.
출처 : https://stackoverflow.com/questions/1112343/how-do-i-capture-sigint-in-python
728x90
반응형
'프로그래밍 언어 > Python' 카테고리의 다른 글
Python에서 날짜 범위 만들기 (0) | 2021.10.25 |
---|---|
파이썬에서 문자열에서 숫자를 추출하는 방법 (0) | 2021.10.25 |
파이썬에서 stderr로 출력하는 방법 (0) | 2021.10.25 |
파이썬에서 절대 파일 경로를 얻는 방법 (0) | 2021.10.21 |
Python에서 디렉토리의 모든 텍스트 파일 찾기 (0) | 2021.10.21 |