gpt4 book ai didi

BASH - 在退出前陷阱 Ctrl+C 清理进程

转载 作者:行者123 更新时间:2023-11-29 09:29:50 25 4
gpt4 key购买 nike

我想在我的脚本中捕获 Control + C 以便我可以在退出脚本之前进行一些清理。到目前为止我有这个:

trap ctrl_c INT

main_script() {
#State of the art technology happening here
}

ctrl_c() {
#Do some cleaning
exit 1
}

问题是在我按下 Control + C 并返回控制台后,控制台行为异常。我再也看不到我的键盘输入,按回车键也不会换行。例如,这是我的控制台的样子:

root@ZonkedCream:~# root@ZonkedCream:~# root@ZonkedCream:~#

感谢帮助

最佳答案

我们没有您脚本的源代码,所以...只是猜测。

可能您的脚本以某种方式更改了 stty 设置,并且当您使用 CTRL-C 中断应用程序时它们没有恢复。

我建议您在脚本启动后立即保存您的 stty 标志,并在您的 ctrl_c() 函数中恢复它们,或者 - 至少 - 在退出之前在 ctrl_c() 中使用 stty sane

关于BASH - 在退出前陷阱 Ctrl+C 清理进程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35464013/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com