![如何“深度停止”一个进程?](https://linux22.com/image/878761/%E5%A6%82%E4%BD%95%E2%80%9C%E6%B7%B1%E5%BA%A6%E5%81%9C%E6%AD%A2%E2%80%9D%E4%B8%80%E4%B8%AA%E8%BF%9B%E7%A8%8B%EF%BC%9F.png)
我有一个长时间运行的 Python 脚本,由于电池问题或我自己的愚蠢行为,它不断被中断。我可以使用 ( CTRL- Z) 来停止该进程,然后fg
重新启动它,但据我所知,这只有在我处于同一会话中并且尚未注销时才有效。
有没有办法深度停止该过程,以便我可以在注销后稍后重新启动它,而不必从头开始?
答案1
当然,你可以使用屏幕,一个终端多路复用器,来解决这个问题:
- 从终端安装屏幕:
sudo apt-get install screen
- 使用命令启动屏幕
screen
- 您将看到一条信息消息,按空格键直到看到终端提示符
- 启动你的 Python 脚本
- 通过按下Ctrl+A和德按钮。
- 您将在上一个提示中看到一条消息:
[detached from 19836.pts-3.ubuntu]
- 您已成功分离,您可以注销或做任何您想做的事情(除非您关闭机器或终止进程)。
当你想重新连接到之前的屏幕会话时,只需screen -r
在终端中输入。你将看到仍在运行的 python 脚本。
您可以找到有关Ubuntu Wiki - 屏幕