python - 重新启动时运行 .sh 脚本并保持运行

标签 python linux bash shell ssh

<分区>

我正在尝试在重新启动时运行一个简单的 .sh 脚本。我想让这个脚本永远运行。我在 /home/user/folder/script.sh 用户目录的一个文件夹中有这个脚本。它运行在一个简单的 vps 上,我可以通过 ssh 访问。如果我在同一目录中通过 ./script.sh & 运行它,它会完美运行。当我关闭 ssh 连接时,它停止了。

我尝试添加一个像这样的 crontab 条目:@reboot/home/user/folder/script.sh &(如其他答案中所建议的那样),然后只需键入 sudo reboot 但它不起作用。

我不知道哪个是解决这个问题的最佳方案。 script.sh 就是这个(我在寻找一些解决方案以在它崩溃时重新启动 python start.py 时找到它):

until ./start.py; do
    echo "Server 'myserver' crashed with exit code $?.  Respawning.." >&2
    sleep 1
done

它完全符合我的需要。

感谢您的帮助!

最佳答案

当您关闭 ssh 连接时,您的脚本会收到挂断信号并退出。如果您像这样启动脚本,则可以使用 nohup 忽略挂断信号:

nohup ./script.sh &

然后脚本会在你关闭连接后继续运行。

关于python - 重新启动时运行 .sh 脚本并保持运行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31370364/

相关文章:

python - Google Cloud App Engine 灵活 - 日志不工作

python - TensorFlow默认使用多少个内核(不使用Coordinator)?

linux - Jenkins 在 linux 中启动失败

linux - 是否可以连接到多个服务器并在日志中搜索文本?

linux - 如何从 80 以外的其他端口从 apache2(来自 GCP 的 linux)访问网站?

php - Magento Cron 作业/bin/bash : php7: command not found

python - PyTorch 置换在 RCNN 中的使用

python - 如何通过 Pandas 中的方法/表达式压平 MultiIndex?

linux - 如何从 bash 中的剪贴板获取值

如果不是或使用两个命令进行 Bash