bash信号处理

linux的信号

 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
16) SIGSTKFLT   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      34) SIGRTMIN    35) SIGRTMIN+1  36) SIGRTMIN+2  37) SIGRTMIN+3
38) SIGRTMIN+4  39) SIGRTMIN+5  40) SIGRTMIN+6  41) SIGRTMIN+7  42) SIGRTMIN+8
43) SIGRTMIN+9  44) SIGRTMIN+10 45) SIGRTMIN+11 46) SIGRTMIN+12 47) SIGRTMIN+13
48) SIGRTMIN+14 49) SIGRTMIN+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

发送信号

kill [-s signal|-p] [-q sigval] [-a] [--] pid...

通过kill -s SIGKILL pid (kill -SIGKILL pid )来终止进程

killall可以通过程序名来结束所有这个名称的进程

pkill可以结束远程会话

xkill可以结束X11应用

Ctrl+C 向前台发送SIGINT信号,终止进程

Ctrl+Z 向前台发送SIGSTP信号,挂起进程

处理信号 

trap 动作 信号

捕获EXIT信号trap '$HOME/logout' EXIT

忽略信号trap - INT QUIT TERM EXIT

信号SIGKILL和SIGSTOP不能被捕获,阻塞或忽略

忽略hup信号nohup

你可能感兴趣的:(linux,bash)