美文网首页
断电不断网——Linux的screen

断电不断网——Linux的screen

作者: 青南 | 来源:发表于2015-01-01 21:21 被阅读136次

    title: 断电不断网——Linux的screen
    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后程序结束运行了。

    相关文章

      网友评论

          本文标题:断电不断网——Linux的screen

          本文链接:https://www.haomeiwen.com/subject/wquztttx.html