shell 信号捕捉处理

HUP(1)   挂起,通常因终端掉线或用户退出引发

INT(2)   中断,通常因CTRL+C组合引发

QUIT(3)  退出, 通常因CTRL+/组合引发

ABRT(6)  中止, 通常因某些严重的错误而引发

ALRM(14)  报警  ,通常用来处理超时

TERM(15)  终止,   通常在系统关机时发送

TSTP(20)   停止进程的运行,但该信号可以被处理和忽略,用户键入SUSP字符时(通常是CTRL+Z)发出这个信号个

kill -l 列出系统的信号

================================================================

===================================================================

通常忽略的信号有 1 2 3 15 20

trap +命令  +信号

trap ""   1 2 3 15 20 或 trap "" HUP INT QUIT TERM TSTP

trap "" 2 屏蔽信号

trap ":" 2 恢复信号

trap ""   `seq 64` 屏蔽64信号

trap ""  `echo  {1..64}`

时间: 2024-08-13 16:17:46

shell 信号捕捉处理的相关文章

shell 脚本编程之信号捕捉和主机探测

shell 脚本编程之信号捕捉和主机探测 =============================================================================== 概述: =============================================================================== 主机探测 1.写一个脚本,探测192.168.0.0网段中主机在线状态 [[email protected] bin]# cat 

shell脚本临时文件生成和使用,信号捕捉

实例:生成临时文件记录apache进程号,杀死apache进程,删除临时文件 1 #!/bin/bash 2 #create_log.sh 3 4 #1.获取到所有httpd应用程序的进程号 5 #2.把进程号存入一个临时文件中 6 #3.从临时文件中取出所有的apache的进程号 7 #4.使用for循环用kill杀掉所有的httpd进程 8 #5.删除之前生成的临时文件 9 #6.输出关闭进程后的消息 10 #$$当前程序运行时候开辟的pid 11 12 tmpfile=$$.txt 13

信号捕捉及计划任务

查看本机硬件设备信息 1.cat /proc/cpuinfo 2.lsusb 3. lspci 4 hal-device stty –F /dev/console size 取文件大小 脚本编程知识点: 变量中字符的长度:${#VARNAME} 变量赋值等 ${parameter:-word}; 如果 parameter为空或未定义,则变量展开为"word",否则,展开为parameter的值. [[email protected] ~]# A=3 [[email protected]

2018-9-17-bash之信号捕捉

一.概述 我们在上一章当中示例了检测ip地址是否在线的脚本,但是有一个问题,运行的过程中,无论使用Ctrl+c怎么制止,并没有什么卵用,还是继续运行,直到将最后一个IP地址ping完,无法制止,只是将当前的ping操作结束,下一个ping操作就要运行,但是如果连续的按下快捷键,总有一个信号捕捉到,但只有被当前进程的脚本捕捉到才能够停止,而不是ping进程,这就是信号. 我们也可以手动定制信号捕捉的功能,那么如何自定义信号捕捉的处理,那么在ping操作时,由于信号捕捉不到,那么能不能在捕捉信号之后

Linux01-BASH脚本编程之信号捕捉及任务计划53

一.脚本编程知识点 1.获取变量中字符的长度:${#VARNAME} 2.变量赋值: a)${parameter:-word}:如果parameter为空或未定义,则变量展开为"word":否则,展开为parameter的值: 如:A=3 echo ${A:-30} unset A echo ${A:-30} b)${parameter:+word}:如果parameter为空或未定义,不做任何操作:否则,则展开为"word"值: 如:echo ${A:+30} A

2信号处理之:信号产生原因,进程处理信号行为,信号集处理函数,PCB的信号集,sigprocmask()和sigpending(),信号捕捉设定,sigaction,C标准库信号处理函数,可重入函数,

 1信号产生原因 2.进程处理信号行为 manpage里信号3中处理方式: SIG_IGN SIG_DFL                                            默认Term动作 a signal handling function 进程处理信号 A默认处理动作 term   中断 core    core(调试的时候产生) gcc –g file.c ulimit –c 1024 gdb a.out core ign      忽略 stop     停止

Linux 信号捕捉

pause函数 pause函数挂起调用它的进程,直到有任何消息到达. 调用进程必须有能力处理送达的信号,否则信号的默认部署就会发生. int pause(void); 只有进程捕获到一个信号的时候pause才返回,如果递送到的信号引发了对信号的处理,那么处理工作将在pause返回前执行. pause总是返回-1,并且将变量errno设置为EINTR. 发送信号和捕获信号是相辅相成的. 每个进程能够决定响应除了SIGSTOP和SIGKILL之外的其他所有信号. SIGSTOP和SIGKILL不能被

linux下Bash局部变量及信号捕捉等概念解释

1.脚本配置文件 /etc/rc.d/init.d/服务脚本可支持配置文件,并放置在/etc/sysconfig/下同名的配置文件 2.局部变量:只对本函数内部等有效,关键字为local 以两个脚本显示变量带或不带local时的区别 2.1编写如下脚本:vim A1.sh #!/bin/bash A=1 SUM() { A=8 } SUM  调用函数 for I in `seq $A 10`; do echo -n "$I   " done echo ./A1.sh:执行脚本显示结果如

bash脚本创建临时文件以及信号捕捉

脚本创建临时文件: #mktemp 创建临时文件或目录 #mktemp [OPTION] FILE.RANDOMLENGTH [OPTION] -d 创建目录. 例如: #mktemp /tmp/file.XX /tmp/file.36 #mktemp /tmp/file.XX /tmp/file.37 #mktemp /tmp/file.XX /tmp/file.38 #mktemp /tmp/file.xxxx /tmp/file/1234 #mktemp /tmp/file.xxxx /t