杀死由shell脚本创建的子进程,以便我执行下一个命令

时间:2019-09-25 07:31:33

标签: shell sh

我有一个执行某些任务的shell脚本

在脚本之间,有一条命令可以无限运行

  

tail -f

con看到正在记录的输出。

通常,可以通过ctrl + z或Ctrl + c退出tail -f。在这种情况下,当我这样做时,它也会退出必须执行的shell。

此命令脚本之后将执行其他通常执行清理任务的命令。

有什么方法可以退出tail命令,而不退出shell脚本执行。

我找到了某种方法,例如找到tail的进程并杀死该进程,但是对于使用shell脚本进行自动化,这些将是非常困难的阻拦程序。

1 个答案:

答案 0 :(得分:0)

我们可以在shell命令中中断用户

像陷阱或onitr

我们需要注册接收信号后必须执行的任务

做到这一点

假设您要使用ctrl + c中断

  

捕获“您的恢复脚本/命令” INT

它将在收到您的单一表单键盘后注册以运行脚本的其余部分