转自 http://www.linuxidc.com/Linux/2013-07/87415.htm

在使用ssh或者telnet登录远程主机后,执行一些耗时的命令,如果此时ssh或者telnet中断,那么远程主机上正在执行的程序或者说命令也会被迫终止。比如你远程登录之后需要执行一个耗时的指令如svn checkout,这时马上又要下班了,你要关闭你的电脑走人了,怎么办?screen能够很好地解决这个问题。screen也叫虚拟终端,可以在一个物理终端上实现多个虚拟终端的效果。

这里来说一下常规用法:

1、新建一个screen

直接screen或者screen -S XXX(XXX是你为这个screen指定的名字)

2、在screen中新建一个虚拟终端(此时你的screen中就有了两个虚拟终端了)

ctrl+a+c(先按ctrl+a,然后再按c,下面的命令也一样)

3、在虚拟终端之间切换

前一个ctrl+a+p

后一个ctrl+a+n

列表选择ctrl+a+shift+"

4、关闭一个虚拟终端

ctrl+a+k或者exit

5、挂起screen(挂起之后你又回到了创建screen的shell)

ctrl+a+d

6、重新连接screen

screen -ls列出当前挂起的screen

比如有这样一条“8888.XXX (Detached)”

那么可以使用screen -r 8888或者screen -r XXX来重新连接。

对于文章开头的问题,应该可以解决了,你连上远程主机后,先不要急于运行你的指令,而是先创建一个screen,然后在screen的虚拟终端里面运行你的指令,要断开连接之前先把screen挂起,下次连进来的时候你只需要重新连接你的screen,你会发现你的指令已经乖乖地执行完毕或者正在执行而不是被迫中断了。

一般以上的用法已经足够,如果需要更多,请直接screen --help。顺便说一下,一般发行版是不带这个软件的,你需要自行安装,Ubuntu下面就直接sudo apt-get install screen。

最新文章

  1. 理解 JavaScript 回调函数并使用
  2. 如何 判断 设备 是否 连接 上 了 wifi
  3. PKCS#1规范阅读笔记2--------公私钥ASN.1结构
  4. apiCloud图片选择、处理、上传模块
  5. Fetch from Upstream 变灰失效
  6. HBase with MapReduce (SummaryToFile)
  7. TStringList中AddObject使用
  8. GIT在Linux上的安装和使用简介
  9. TortoiseGIT安装过程及问题
  10. JS开发HTML5游戏《神奇的六边形》(三)
  11. 【Java学习笔记之十八】Javadoc注释的用法
  12. windows系统php配置redis
  13. Maven的安装步骤
  14. Mac上使用jenkins+git持续集成浅析
  15. xmind 8 便携版:关联文件后,双击打开文件,在当前文件夹产生configuration子文件的问题解决办法
  16. Vue使用枚举类型实现HTML下拉框
  17. 《Python编程从入门到实践》--- 学习过程笔记(3)列表
  18. 第一篇:初始Golang
  19. 如何在Visual Studio VS中定义多项目模板
  20. BZOJ3672: [Noi2014]购票(dp 斜率优化 点分治 二分 凸包)

热门文章

  1. Mac OS 终端 iTerm2配置大全
  2. dubbo小教程
  3. 2020年9大顶级Java框架
  4. C#类、对象、方法和属性详解
  5. clion 的 安装 变量配置的 搬运工(有点基础应该能看 大家看不懂 就是我自己看 哈哈哈哈哈哈)
  6. POJ 1185 状态DP
  7. UML-重构
  8. 洛谷 P2722 总分 Score Inflation && 完全背包模板
  9. MyBatis 查询结果的缓存
  10. mysql 基本知识 以及优化