title: 断电不断网——Linux的screen

author:青南

date: 2015-01-01 20:20:23

categories: [Linux]

tags: [linux,screen,session]

使用AWS亚马逊云搭建Gmail转发服务(二)中,我们最后运行了邮件转发程序。本以为程序就可以正常工作了,于是我关闭了Putty窗口。几个小时后回来,发现程序早就终止运行了。

原来,在一般情况下,当一个session结束时,这个session里面运行的进程也会同时结束。这可不能达到我们要的效果。于是screen命令登场了。

使用screen命令,可以让程序在断开session的时候继续运行。要打开screen,只需要在终端输入screen这个命令即可。请看下面演示:

cd wwwproject/ghelper
screen
python gmail_helper.py

这样就在一个screen里面运行了邮件转发程序。那么如何退出呢?

键盘上Ctrl+A+D三个键一起按。这样就返回到了进入screen之前的终端界面。而邮件转发程序仍然在后台默默的运行。现在可以关闭putty,然后放心的去睡觉了。

那重新SSH登录服务器以后,想关闭这个邮件转发程序怎么办?

两个方法:

方法一,直接结束Python进程。

方法二,在终端窗口输入:

screen -ls

终端窗口返回:

ubuntu@ip-172-31-15-35:~$ screen -ls
There is a screen on:
7956.pts-0.ip-172-31-15-35 (01/01/2015 12:16:10 PM) (Detached)
1 Socket in /var/run/screen/S-ubuntu.

注意这里的7956就是pid,于是输入:

screen -r 7956

就能回到Python的运行窗口了。于是,Ctrl+C结束程序运行。

有了screen命令,再也不怕关闭session后程序结束运行了。

最新文章

  1. SDWebImage下载图片有时候无法成功显示出来
  2. linux之iptables总结
  3. 《华油能源OA系统数据同步和扩展的设计与实现_张宇峰》阅读笔记
  4. 关于NGINX变量的一些测试结果
  5. NSString / NSMutableString 字符串处理,常用代码 (实例)
  6. HDU2795 billboard【转化为线段树。】
  7. 嵌入jetty到Java代码
  8. grunt实用总结
  9. 001---Hibernate简介( 开源O/R映射框架)
  10. Visual Studio2012 添加服务引用时,生成基于任务操作不可用原因
  11. 什么是内部类? Static Nested Class 和 Inner Class 的不同。
  12. 移动端弹出层加遮罩后禁止body滑动
  13. 16.QT-QMap和QHash解析
  14. AI for VS ,美团创新之处分析
  15. mo +离散化 HDU3333(听说还有离线线段树的做法 )
  16. 【Linux 进程】孤儿进程、僵尸进程和守护进程
  17. Yarn遭到挖矿病毒攻击
  18. PAT乙级1012
  19. python学习---python基础一
  20. 关于启动MongDB的mongod.exe文件闪退的问题

热门文章

  1. 微信小程序开发心得
  2. Visaul Studio 常用快捷键的动画演示
  3. SDWebImage源码解读_之SDWebImageDecoder
  4. 用游标实现查询当前服务器所有数据库所有表的SQL
  5. 基于SignalR的消息推送与二维码描登录实现
  6. 自建git node pm2 (不赘述,就说遇见的问题)
  7. 转:MSSQL还原单mdf文件报1813错误
  8. EasyPR--开发详解(4)形态学操作、尺寸验证、旋转等操作
  9. zookeeper集群搭建
  10. WCF学习之旅—WCF服务的Windows 服务程序寄宿(十一)