这听起来可能是重复的,但先听我说完。
我运行一个shell脚本,它有一个标准的输入活动,有时在启动时需要一些输入。我需要它24小时运行,如果失败,它需要重新启动,输入一个命令,或者在提示符弹出时输入"y“。我已经尝试过两种方法:使用nohup并单击Ctrl+Z,键入bg都会显示作业已停止,并且没有运行。只有当我执行fg时,它才会激活。知道怎么解决这个问题吗?
我也试过scriptcommand &,结果也是“停止”了。
将其设置为系统服务是否有意义?
发布于 2020-04-14 19:10:21
要使脚本在后台继续运行,请使用nohup:nohup scriptcommand &。理想情况下,脚本可以选择不提示输入。如果由于某种原因这不是一个选项,则可以使用期望输入'y‘。
为脚本创建systemd服务将允许在系统重新启动时启动脚本。您还可以在系统文件中使用Restart=always重新启动服务,如果服务退出或终止,即systemd文档有更多信息。
https://unix.stackexchange.com/questions/580058
复制相似问题