Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/296.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使python脚本在AmazonEC2上永远运行_Python_Amazon Web Services_Ssh_Amazon Ec2 - Fatal编程技术网

使python脚本在AmazonEC2上永远运行

使python脚本在AmazonEC2上永远运行,python,amazon-web-services,ssh,amazon-ec2,Python,Amazon Web Services,Ssh,Amazon Ec2,我有一个python脚本,它基本上永远运行,每秒检查一个网页,如果任何值发生变化,就会通知我。我将它放在AWSEC2实例上,并通过ssh运行它。当我在启动脚本大约半小时后检查脚本时,脚本运行良好 问题是,在我再次检查的几个小时后,ssh已经关闭。当我重新登录时,没有程序在运行。我检查了所有正在运行的进程,但什么都没有运行 有人能教我如何让它在AWS EC2实例上永远运行(或者直到我停止运行)吗?非常感谢 编辑:我使用AWS提供的Java SSH客户端来运行脚本您可以使用nohup命令运行程序,

我有一个python脚本,它基本上永远运行,每秒检查一个网页,如果任何值发生变化,就会通知我。我将它放在AWSEC2实例上,并通过ssh运行它。当我在启动脚本大约半小时后检查脚本时,脚本运行良好

问题是,在我再次检查的几个小时后,ssh已经关闭。当我重新登录时,没有程序在运行。我检查了所有正在运行的进程,但什么都没有运行

有人能教我如何让它在AWS EC2实例上永远运行(或者直到我停止运行)吗?非常感谢



编辑:我使用AWS提供的Java SSH客户端来运行脚本

您可以使用nohup命令运行程序,这样即使SSH会话关闭,您的程序也可以继续运行

例如:
nohup python yourscriptname.py&

有关更多信息,您可以使用查看手册页
mannohup

您可以使用
Linux-screen
。Linux-screen工具不仅可以帮助您避免断开连接的灾难,还可以通过在一个SSH会话中使用多个窗口来提高生产效率。 要安装:

sudo apt-get install screen
启动新会话:

screen -S <screen_name>

感谢分享这是最简单和最好的解决方案,好的是屏幕内置安装在ubuntu18.04上
screen -r <screen_name>