我想编写一个 bash 脚本来自动执行一个简单的任务。此任务涉及运行一个program
(不是我编写的)脚本,该脚本在用户按下 CTRL+C 之前执行某些操作。之后,我必须process the output
。我写了这个:
#!/bin/bash
program
process the output
program
按预期启动,但当我按 CTRL+C 时,process the output
它没有运行。我敢打赌我的脚本在按 CTRL+C 时完全退出。
我怎样才能实现我的需要?
答案1
为 SIGINT 设置信号处理程序:
trap "echo Ctrl+C received" INT
program
trap - INT
process the output