我的debian服务器上有一个python脚本sc.py。
我想:
你知道能让我这样做的软件吗?
我不知道我是否需要在python端寻找解决方案(任何python模块或配置),或者某个地方是否有debian软件包可以完成这项工作?
答案 0 :(得分:2)
您可以使用supervisord
。
它为您守护Python进程,并处理子进程。
答案 1 :(得分:1)
如果这是一次性任务(也就是说,您没有创建软件产品),我会快速使用shell脚本和终端多路复用器(如screen)的组合。要重新启动死亡的进程(即,他们发出了0
以外的退出代码),只需use the shell。
启动您的流程,例如:
for i in n/*; do
screen -d -m -L -S $i -t $i until python sc.py $i; do echo "Crashed with exit code $?. Respawning.." >&2 ; sleep 1 ; done
done
这会
n/
中的每个文件创建一个新的屏幕会话until
)-t
)和会话名称(-S
)设置为输入文件名-L
),请打开所有输出的记录以供日后检查。然后,您可以使用screen -list
等常规屏幕命令列出所有正在运行的任务,并使用screen -r <session name>
查看正在运行的会话输出。
答案 2 :(得分:1)