取消脚本进程之——后台进程
今天碰到一个问题,把一个正在运行的脚本取消,可是该脚本在后台起来的线程仍然在运行。
简单测试了一下
#!/bin/bash echo "Begin Test ..." (sleep 100)& (sleep 100)& (sleep 100)& wait echo "End Test ..."
在脚本还在等待返回的时候ctrl +c停止脚本,发现后台的sleep不受影响。
目前打算先获取主进程的进程号pid,这些后台进程的父进程号就是该pid,通过该pid获取后台进程的线程号,从而杀死这些后台线程。
【推荐】还在用 ECharts 开发大屏?试试这款永久免费的开源 BI 工具!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步