如何在关闭ssh连接的情况下,让进程继续运行?

 

#screen
  • 1

回车后进入Screen子界面,此时putty标题栏会指示处于子界面状态,然后运行你的程序

#应用程序名
  • 1

然后按下Ctrl+A后抬起,然后按下d键,此时切换回主界面,Putty的窗口标题栏也会指示。

#进行其他的操作,或者exit
  • 1

此时就是断开ssh,程序仍在运行。以后重新ssh连接后,输入

#screen -ls
  •  

,查看子界面的代号,然后输入

#screen -r 子界面代号1

就可以查看当初你程序运行所在的子界面了。


常用screen参数:


# screen -S docker-d 新建一个名叫docker-d的session,并马上进入
# screen -dmS docker-d 新建一个名叫docker-d的session,但暂不进入,可用于系统启动脚本里
# screen -ls 列出当前所有session
# screen -r docker-d 恢复到zhouxiao这个session,前提是已经是断开状态(-d可以远程断开会话)
# screen -x docker-d 连接到离线模式的会话(多窗口同步演示)
# screen ./rsync.sh screen创建一个执行脚本的单窗口会话,可以attach进程ID
# screen -wipe 检查目前所有的screen作业,并删除已经无法使用的screen作业

正常情况下,当你退出一个窗口中最后一个程序(通常是bash)后,这个窗口就关闭了。另一个关闭窗口的方法是使用C-a k,这个快捷键杀死当前的窗口,同时也将杀死这个窗口中正在运行的进程。


在每个screen session 下,所有命令都以 ctrl+a(C-a) 开始。


C-a w 显示所有窗口列表
C-a k 这个快捷键杀死当前的窗口,同时也将杀死这个窗口中正在运行的进程。 
C-a d detach,暂时离开当前session
 
原文地址:https://www.cnblogs.com/LMIx/p/9786239.html