shell脚本中的trap命令

本文介绍如何在Linux中使用shell脚本来处理各种信号,包括常见信号的名称及其组合键,并通过示例展示了如何利用这些信号来创建交互式的跳板机脚本,以增强远程管理的安全性和便利性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 

[root@localhost ~]# 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

 

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

 

trap -l显示信号名称和对应的组合键

trap "" 2    ---屏蔽Ctrl+C组合键

 

trap ":" 2  ---恢复Ctrl+C组合键

 

 

[root@localhost ~]# trap " echo -n 'you are typing ctrl+c' " 2 
[root@localhost ~]# ^Cyou are typing ctrl+c

 

shell跳板机

1)首先做好ssh key认证

2)实现传统的远程菜单选择脚本

3)利用linux信号防止用户在跳板机上操作

4)用户登录后即调用脚本

 

function trapper(){

trap ":" INT EXIT TSTP TERM HUP

}

while true

do

 trapper

        clear

            cat<<menu

            1)web a

            2)web b

            3)exit

menu

        read -p "please input:" num

        case "$num" in

        1)

         ssh 10.0.0.19

         ;;

        2)

         ssh 10.0.1.18

         ;;

        3)

         exit

esac

done

~          

转载于:https://my.oschina.net/u/1866459/blog/869938

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值