我正在尝试在数字海洋(DO)Droplet(Ubuntu 16)上运行此Python脚本: https://github.com/instabot-py/instabot.py
虽然我可以运行python3 example.py
,但是如果我杀掉我曾经使用SSH进入DO Droplet的终端窗口,该过程就会停止。
有没有办法运行这个Python脚本并在仍然运行Python脚本的情况下与DO Droplet断开连接?
答案 0 :(得分:3)
使用nohup
在后台运行程序
nohup python3 example.py > /dev/null 2>&1 &
或者您可以使用screen
执行此操作:
$ screen
$ python3 example.py
To detach the current session, you can press Ctrl+A and then press D.
To re-attach previous session, use command `screen -r`
screen
命令比nohup
更强大。
答案 1 :(得分:1)
即使断开与服务器的连接,您也可以在linux中使用screen
继续在后台执行该过程。
同样可以使用tmux
。
this问题的答案很可能是您正在寻找的。 p>
答案 2 :(得分:0)
你可以试试这些python库来实现这个
https://pypi.python.org/pypi/spur
或者您也可以使用tmux在远程服务器上运行命令,即使您退出shell,tmux seisson也会在后台运行。您可以在几天之后加入该tmux会话并继续执行命令
答案 3 :(得分:0)
我们使用以下格式来执行远程脚本
ssh -t -t user@host.com 'nohup /path/to/scrip.py'