Answers:
您是否希望拥有一个可以恢复的持久会话,或者只是为了防止断开连接而终止执行?
对于前者,请使用screen
,对于后者nohup
。
如前所述,screen
可以解决所有问题。但不仅您需要什么。我使用屏幕已有多年了,现在每次登录系统时都使用它。尝试使用以下配置安装screen
和创建~/.screenrc
:
sessionname vcflists
startup_message off
deflogin off
vbell off
msgminwait 0
msgwait 10
log off
backtick 1 0 0 hostname
caption splitonly "%?%F%{= yk}%:%{= Kk}%? %n %t%="
hardstatus alwayslastline "%{= rY} %1` %{= kg} %0c %{= bY} %-w%{= Yk} %n %t %{-}%+w %=%{g}%l "
然后运行screen -Rd vcf
。那是首选的屏幕调用。您将重新连接到名称为vcf *的先前创建的会话(如果模棱两可,则被警告),或者,如果尚未打开会话,则将创建该会话。CTRL+ A是执行所有操作的meta键。CTRL+A C
(CTRL+ A,然后C)在会话内部创建新窗口(屏幕)。CTRL+A SPACE
将焦点移至下一轮。CTRL+A D
分离当前会话,以保持连接之间所有窗口的功能。如果您启动了一些looooong任务,则可以从屏幕上拆下并稍后再附加到它上,以查看发生了什么。如果您的ssh会话丢失,也会发生相同的情况-屏幕保持打开状态,所有打开的窗口和所有任务启动。
如果要关闭屏幕内的某些窗口-仅从其中exit
的外壳中即可。如果要关闭所有窗口中的所有外壳程序/任务并退出屏幕-只需按CTRL+A CTRL+\
,然后在询问时按“ Y”即可。
对于其他所有内容,请参见man屏幕。