如何在Bourne Again shell(Bash)中停止Ctrl + C终止脚本?我可以做什么,以便在按下Ctrl + C时bash脚本不会停止?
答案 0 :(得分:3)
Ctrl + C 将INT
(“中断”)信号发送到shell的前台进程。此信号可以忽略。
示例脚本:
#!/bin/bash
trap '' INT # ignore INT
sleep 100
脚本可能仍会被例如中断TERM
信号(以及其他一些信号),即kill
默认发送的信号。在交互式bash
会话中,您还可以使用 Ctrl + Z 暂停该过程,然后使用kill %+
将其终止(%+
对应于“当前作业”如果你刚刚暂停它将是脚本)。您可以忽略TERM
信号,方法与忽略INT
信号的方式相同。
如果您只想忽略脚本部分的INT
信号,可以稍后使用
trap - INT
答案 1 :(得分:0)