以下问题已被问过数百万次(请耐心等待:-))..为什么——我找不到一个简单、结论性的答案?——将不胜感激!
- 如果我自己的计算机关闭并且 ssh 也关闭,那么在 ssh 中以“./What_ever_job &”的形式运行程序(What_ever_job.EXE 文件)是否足以使其继续运行?如果不能,那么运行它的准确方法是什么(拜托!...)?
请不要使用“屏幕”,我看到了一种叫做“nohup”的东西(?) - 我该如何写下赞扬?
答案1
“简单而明确的”答案是屏幕。我知道您说过您不想要屏幕,但无论如何我都会给您简单的步骤:
- 使用 SSH 登录远程计算机
- 运行
screen
(你的命令窗口看起来就像被清除了一样) - 运行您想要的任何命令。无需使用 &
- 按 Ctrl-A,然后按 D 键
您将与 screen 断开连接,命令窗口将与您登录时一样,但进程仍在运行。使用 screen 还有一个好处,就是在断开远程计算机后,您可以重新连接到正在运行的进程,而 nohup 则不允许这样做。
至于使用 nohup,我实际上没有用过,但语法似乎很简单nohup yourcommand &
。值得指出的是维基百科中有关 nohup 的文章提供了许多您可能想要尝试的其他替代方案,例如VNC
它是否可用,或者start-stop-daemon
在基于 Debian 的系统上。
编辑:如果您想在一行中启动该过程,则可以使用screen -dmS name yourcommand
,其中“name”可以是任何内容,并且只是屏幕用来引用后台会话的名称,“yourcommand”是您想要在后台运行的命令。