我在计算引擎上运行一个启动脚本,env是Ubuntu 16.04,该脚本运行一个屏幕,然后在屏幕内运行一个进程。
所有回波线都打印在串行端口1屏幕上。
问题是当我SSH进入机器时,没有屏幕运行。
我测试了每条线路,以确保它们正常工作。
有人能帮我理解这个问题吗?
脚本:
#! /bin/bash
echo "going to sleep"
echo "starting bitcored"
screen -d -m -S testScreen 'bitcored'
echo "bitcored started"
screen
内部的进程结束时会自动关闭。为了保持它的开放性,你需要一个活跃的内部流程。如果您在其中运行的进程由于任何原因结束,您可以通过在进程结束时启动一个交互式shell来保持screen
繁忙,例如:
screen -d -m -S testScreen "bitcored ; exec bash"
一旦bitcored
停止运行,这将启动bash
,并且一旦bash
停止,这将关闭屏幕,在正常情况下仅手动发生。