我最近买了一台服务器,对服务器总体来说还很陌生,我试图让服务器在后台运行,同时我在服务器上做其他事情,我尝试的任何命令都只是作为 minecraft 命令执行,而 ctrl+a,d 不起作用。我正在运行 Ubuntuserver 22.04.3
答案1
我不太确定你的意思实际上是分离,但最有可能的是,将正在运行的进程/命令发送到后台并保持其在那里运行,同时释放提示符来执行其他命令,这可以通过以下方式实现第一的,按Ctrl+z以停止(记住这一点)进程,同时将其发送到后台,释放提示,结果如下(sleep 1h
以一个长期运行的工作为例):
$ sleep 1h
^Z
[1]+ Stopped sleep 1h
$
... 现在提示已经释放,您可以然后,像这样在后台恢复工作bg
:
$ bg
[1]+ sleep 1h &
$
...现在,你的工作正在后台运行,你可以jobs
像这样验证:
$ jobs
[1]+ Running sleep 1h &
$
...要使其再次回到前台,请fg
像这样使用:
$ fg
sleep 1h
...当然,您可以根据需要重复上述步骤来回发送。
另一方面,要将作业从当前终端分离并发送到后台在其自己的 shell 中运行,首先使用& disown
以下命令运行它:
$ sleep 1h & disown
[1] 6428
...但它将不再属于当前运行终端中当前运行的 shell 并且jobs
不会返回它:
$ jobs
$