将正在运行的 shell 进程从当前终端剥离,并重新挂载到新的 screen 会话中
别再担心 VPN 连接断开导致远程任务被杀掉了。你可以通过分离 screen 会话并在稍后重新连接,以安全可控的方式从笔记本电脑或台式机连接到远程服务器工作。如何将正在运行的任务从当前 shell 会话中剥离?有几种方法可以实现这一点。最简单且最常用的方式可能是将进程放入后台并执行disown。使用Ctrl+Z挂起程序,然后用bg让进程在后台运行,再用disown将其从当前终端会话中剥离。通过内置的 bashjobs命令可以列出所有已存在后台进程,只要进程尚未被剥离,你仍可以使用fg将其重新调回前台。bg [jobspec ...] 将每个挂起的作业 jobspec 恢复在后台运行,就像它一开始就是用 `` 启动的一样。 如果未指定 jobspec,则使用 shell 当前作业的概念。 除非作业控制被禁用,或者当作业控制启用时指定的 jobspec 无效或未在作业控制下启动, 否则 bg jobspec 返回 0。 disown [-ar] [-h] [jobspec ...] 不带选项时,将每个 jobspec 从活动作业表中移除。 如果指定了 -h 选项,则不会从表中移除 jobspec,但会标记它,使得当 shell 收到 SIGHUP 时 不会向该作业发送 SIGHUP。 如果未提供 jobspec,且未提供 -a 或 -r 选项,则使用当前作业。 如果未提供 jobspec,-a 选项表示移除或标记所有作业; 不带 jobspec 参数的 -r 选项将操作限制为正在运行的作业。 除非 jobspec 未指定有效作业,否则返回值为 0。 fg [jobspec] 将 jobspec 恢复在前台运行,并将其设为当前作业。 如果未指定 jobspec,则使用 shell 当