脚本终止后删除文件

时间:2017-02-18 20:59:31

标签: bash shell command abort

我问自己,当我用crtl + c终止bash脚本时,脚本是否可能在中止之前执行最后一个命令,比如删除由该脚本创建的文件?

3 个答案:

答案 0 :(得分:1)

您可以捕获伪信号EXIT以在出于任何原因退出之前执行某些操作:

trap 'rm myfile' EXIT

或陷阱INT以便在退出前由于Control-C而执行命令:

trap 'rm myfile' INT

答案 1 :(得分:0)

您希望ctrl-c捕获用于后期脚本清理。

https://rimuhosting.com/knowledgebase/linux/misc/trapping-ctrl-c-in-bash

答案 2 :(得分:0)

您可以先通过以下方式捕获ctrl + c:

trap ctrl_c INT

在按ctrl + c(停止脚本执行)后,此行将调用函数ctrl_c。 然后创建一个函数ctrl_c,并在该函数中删除要删除的文件,如下所示:

function ctrl_c(){
     rm -rf ~/PATH-OF-THE-FILE-TO-DELETE
}