写一个简单的shell脚本,脚本运行时让CTRL+C无法中断的该shell脚本?
这里先做一个简单的介绍,在shell脚本中用trap命令捕获SIGINT信号就可以做到忽略系统传输的中断信号,比如,ctrl+c产生的中断信号。
系统给出的SIGINT信号数字为2或者直接写信号名称也可以
豪鹫这里给出一个简单的例子吧,脚本如下:
[root@haojiu ~]# cat vmstat.sh
#!/bin/bash
#script usinf for ignore system sigint.
#create by haojiu.
#date 2015-x-x
#在循环执行命令前面使用trap "" 2或者trap "" SIGINT,两者任选其一
#trap "" 2
trap "" SIGINT
vmstat 2 10
通常情况下,如果没有加入trap "" 2或者trap "" SIGINT这条命令时,直接执行vmstat 2 10,在脚本的执行过程中,是可以通过按住CTRL+C来中断脚本的运行的,但如果加入trap命令之后,脚本在执行过程中会忽略收到的信号SIGINT,而不做任何处理。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。