Cover by Cameron Newham, JP Vossen, Carl Albing

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

O'Reilly logo

Trapping Interrupts

Problem

You are writing a script that needs to be able to trap signals and respond accordingly.

Solution

Use the trap utility to set signal handlers. First, use trap -l (or kill -l) to list the signals you may trap. They vary from system to system:

	# NetBSD
	$ trap -l
	 1) SIGHUP    2)   SIGINT      3) SIGQUIT    4) SIGILL
	 5) SIGTRAP   6)   SIGABRT     7) SIGEMT     8) SIGFPE
	 9) SIGKILL   10)  SIGBUS     11) SIGSEGV   12) SIGSYS
	 13) SIGPIPE  14)  SIGALRM    15) SIGTERM   16) SIGURG
	 17) SIGSTOP  18)  SIGTSTP    19) SIGCONT   20) SIGCHLD
	 21) SIGTTIN  22)  SIGTTOU    23) SIGIO     24) SIGXCPU
	 25) SIGXFSZ  26)  SIGVTALRM  27) SIGPROF   28) SIGWINCH
	 29) SIGINFO  30)  SIGUSR1    31) SIGUSR2   32) SIGPWR
	 # Linux
	 $ trap -l
	   1) SIGHUP        2) SIGINT        3)  SIGQUIT      4) SIGILL
	   5) SIGTRAP       6) SIGABRT       7)  SIGBUS       8) SIGFPE
	   9) SIGKILL      10) SIGUSR1      11) SIGSEGV      12) SIGUSR2
	  13) SIGPIPE      14) SIGALRM      15) SIGTERM      17) SIGCHLD
	  18) SIGCONT      19) SIGSTOP      20) SIGTSTP      21) SIGTTIN
	  22) SIGTTOU      23) SIGURG       24) SIGXCPU      25) SIGXFSZ
	  26) SIGVTALRM    27) SIGPROF      28) SIGWINCH     29) SIGIO
	  30) SIGPWR       31) SIGSYS       33) SIGRTMIN     34) SIGRTMIN+1
	  35) SIGRTMIN+2   36) SIGRTMIN+3   37) SIGRTMIN+4   38) SIGRTMIN+5
	  39) SIGRTMIN+6   40) SIGRTMIN+7   41) SIGRTMIN+8   42) SIGRTMIN+9
	  43) SIGRTMIN+10  44) SIGRTMIN+11  45) SIGRTMIN+12  46) SIGRTMIN+13
	  47) SIGRTMIN+14  48) SIGRTMIN+15  49) SIGRTMAX-15  50) SIGRTMAX-14
	  51) SIGRTMAX-13  52) SIGRTMAX-12  53) SIGRTMAX-11  54) SIGRTMAX-10
	  55) SIGRTMAX-9   56) SIGRTMAX-8   57) SIGRTMAX-7   58) SIGRTMAX-6
	  59) SIGRTMAX-5   60) SIGRTMAX-4   61) SIGRTMAX-3   62) SIGRTMAX-2
	  63) SIGRTMAX-1   64) SIGRTMAX

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, interactive tutorials, and more.

Start Free Trial

No credit card required