如何在shell脚本中实现事件处理?

时间:2011-12-16 08:40:12

标签: shell unix

在我的shell脚本中,我删除脚本末尾的文件。即使脚本被(ctrl c或ctrl z)停止,我也需要将其删除..有没有办法读取并删除文件?

提前致谢

2 个答案:

答案 0 :(得分:3)

就像@pgl所说,trap就是你想要的。语法是:

trap <actionhere> <event> [event...]

该操作是唯一的一个参数,但它可以运行多个命令。该事件为exit(当您手动调用exit时)或信号为“短”名称,即没有SIG前缀(例如,INT为{ {1}}。

示例:

SIGINT

您可以在脚本中更改陷阱。当然,您可以在动作中使用变量插值。

答案 1 :(得分:2)

您可以使用trap内置来捕捉ctrl + c。试试这个开始吧:

help trap