We can check for Ctrl-C with KeyboardInterrupt exception as follows:
try: while True: print "Echo ", raw_input(">") except KeyboardInterrupt: print "Good bye"
When python process was killed, we will not get KeyboardInterrupt. But we can instead catch SIGTERM sent by kill command.
In order to catch SIGTERM, we can do:
import signal import sys def signal_term_handler(signal, frame): print 'got SIGTERM' sys.exit(0) signal.signal(signal.SIGTERM, signal_term_handler)
List of signal is available in POSIX Signals. Note that SIGKILL cannot be caught.