应用程序菜单项用于在终端中启动本地服务器并保持终端打开以供输入

应用程序菜单项用于在终端中启动本地服务器并保持终端打开以供输入

我想实现以下目标:

通过单击“应用程序菜单”条目,启动 Minecraft 服务器,该服务器目前在我的 Ubuntu 机器上运行,保持终端窗口打开(作为控制台)。然后,当我返回“屏幕”时,我可以从该“控制台窗口”管理服务器。

我已经尝试从桌面上的 .sh 文件运行此脚本,直到它正常工作:

#!/bin/bash
screen
cd /media/terabyte/minecraft/
./start.sh

但是终端关闭了,服务器仍在运行,但我无法控制它,必须从任务管理器中将其终止。

答案1

要在屏幕会话中运行 minecraft 服务器并在 minecraft 服务器终止时保持该服务器打开,请将脚本更改为:

#/bin/bash
screen -m bash -c 'cd /media/terabyte/minecraft/ && ./start.sh ; bash'

这将运行 screen,并在 screen 会话中运行启动服务器的命令。一旦服务器启动,bash就会调用它来保持终端打开。否则,screen 会话将结束。

要立即将此屏幕会话移至后台,请包含-d(detach) 选项。然后,您需要先附加到该屏幕会话,才能看到属于该会话的 bash 提示符。

相关内容