在linux的环境中,我们想要在后台持续运行一些脚本,但是又因为关闭这个tty的话,脚本就会中断,这个时候我们就需要screen这个工具的帮助啦!

基础

 
  1. 1

    首先先查看下否则有这个工具。如果运行screen后提示command not found,那么说明我们还没有安装这个工具。

  2. 2

    如果redhat系的linux distribution,那么可以用yum install -y screen 来安装screen。

  3. 3

    安装完毕后在运行screen,会跳出这么一个介绍页面,再按回车键,那么就进入到screen里面啦!

     
  4. 4

    我们可以在里面运行我们需要的脚本,那么运行完后怎么回到原来的命令行呢?答案是:先按CTRL+a,然后再按d。

  5. 5

    在原来的界面运行screen -ls可以看到现有的screen的会话。

  6. 6

    怎么回到这个screen的会话中呢?运行screen -r <session>,那我们这边就是运行screen -r 2684.pts-0.NetDimCC。

  7. 7

    这就是基本的screen的用法啦~

    END

进阶

 
  1.  

    那后面讲一些比较有用的screen的命令。

    Screen分屏,有的时候我们需要边观察一个命令的输出边执行一些操作,开两个CLI是一种解决方式,用screen分屏的功能也能做到。

    首先在screen的session中按CTRL+a,X,这个时候就会出现第二个屏。

  2.  

    然后按CTRL+a,tab可以在两个屏幕之间自由切换。

  3.  

    切换到下个屏幕后,没有命令输入的提示符啊,怎么建立呢?

    CTRL+a,c

  4. 4

    还有一个命令要强烈推荐下,可以在detach的模式下跑screen的命令,我经常用这个命令去在后台持续抓包。

    就是在主tty中,运行 screen -dm <你要跑的命令>

    看下图,我运行screen -dm tcpdump,然后再去查看screen的 session时,发现多了一个,但是我并没有进入screen的会话中,也就是并没有attach进去。

    转自

    screen 常用命令_百度经验
    https://jingyan.baidu.com/article/25648fc184e9ab9190fd005c.html

    自己总结

    screen 可以理解为一个虚拟屏幕;

    在同一个终端下拥有多块“屏幕”——即“会话”。

    screen -S yourname -> 新建一个叫yourname的session
    screen -ls(或者screen -list) -> 列出当前所有的session
    screen -r yourname -> 回到yourname这个session
    screen -d yourname -> 远程detach某个session
    screen -d -r yourname -> 结束当前session并回到yourname这个session

    #创建一个离线会话screen -dmS test

    #查看会话列表screen -ls
    There is a screen on: .test (Detached) Socket in /var/run/screen/S-root.

    #进入会话screen -r test
    # 或者screen -r

    # 执行下载命令aria2c -s -x -c http://xxxxx

    #退出会话Ctrl+a,按d

    #或者会话screen -d test

    #下次进入会话重复上面的步骤即可

    #退出会话后,里面运行的程序不会停止 #退出会话,可以使用-ls然后kill掉,但建议使用以下方法
    screen -r test
    exit

    [root@test1 ~]# screen -r test
    [screen is terminating]

screen命令使用方法【转】的更多相关文章

  1. Linux中Screen命令使用方法

    一.使用Screen创建一个Session screen -S sessionName 注:sessionName是要删除的session名字 二.结束一个Screen创建的session 1.首先使 ...

  2. linux screen 命令详解

    一.背景 系统管理员经常需要SSH 或者telent 远程登录到Linux 服务器,经常运行一些需要很长时间才能完成的任务,比如系统备份.ftp 传输等等.通常情况下我们都是为每一个这样的任务开一个远 ...

  3. linux screen 命令详解[转]

    一.背景 系统管理员经常需要SSH 或者telent 远程登录到Linux 服务器,经常运行一些需要很长时间才能完成的任务,比如系统备份.ftp 传输等等.通常情况下我们都是为每一个这样的任务开一个远 ...

  4. linux screen 命令详解(未验证+研究)

    一.背景 系统管理员经常需要SSH 或者telent 远程登录到Linux 服务器,经常运行一些需要很长时间才能完成的任务,比如系统备份.ftp 传输等等.通常情况下我们都是为每一个这样的任务开一个远 ...

  5. [转]linux中强大的screen命令

    [转]linux中强大的screen命令 http://pythonorg.diandian.com/post/2012-01-05/40027464147 今天用SCREEN用点生了,有几个功能不知 ...

  6. linux之screen命令

    linux平台下想同时运行多个操作,执行多个程序或命令:命令行就一个,要想同时执行多个命令如何操作? 一个screen命令即可: Centos操作系统默认没有安装screen: 安装方法: Cento ...

  7. Screen命令安装使用教程

    在安装lnmp之前,我们一般先运行一下Screen程序,因为screen好像一个容器一样,把lnmp的安装过程保护了起来.以CentOS中安装lnmp为例,程序下载.编译都需要比较长的时间,如果中途遇 ...

  8. screen 命令安装使用

    初次接触Linux的朋友总会有个感觉:Windows平台想同时运行多个操作,执行多个程序或命令只需要打开程序即可:但在Linux中,命令行就一个,要想同时执行多个命令如何操作? 其实,只需要一个简简单 ...

  9. 天河2号-保持使用yhrun/srun时连接不中断 (screen 命令教程 )

    问题重述: 当我们使用天河机进行并行程序实验的时候,都会使用到yhrun/srun命令.在超算环境下,yhrun 命令用来进行提交交互式作业,有屏幕输出.但是容易受到网络波动影响导致断网或者关闭窗口最 ...

随机推荐

  1. VS NuGet离线包(缓存包)nupkg安装

    最近项目需要在NuGet添加一个依赖项,无奈公司开发机没网... 说出来各位看官可能不信,做开发的开发机居然没网!!!!!(那你还不赶快离职闪人) 没办法,项目需要还是得把东西扔进VS里面去,只有想办 ...

  2. HDU4646_Laser Beam

    题目是这样的,一个等边三角形,三边都是有镜子组成的. 现在要你从一个点射入一条光线,问你如果要求光线在三角形里面反射n次然后从入点射出来的话,入射的方向可能有多少种? 这.....其实不难.关键是要搞 ...

  3. week1day01 认识python 变量 数据类型 条件if语句

    1.什么是python? Python是一种解释型.面向对象.动态数据类型的高级程序设计语言.Python由Guido van Rossum于1989年底发明,第一个公开发行版发行于1991年.像Pe ...

  4. 黑客帝国雨效果JS

    黑客帝国雨效果JS. <!DOCTYPE html> <html lang="en"> <head> <meta charset=&quo ...

  5. 【数据库_Postgresql】sql查询结果添加序号列

    ROW_NUMBER () OVER (ORDER BY A .ordernumber ASC) AS 序号

  6. Day21-Cookie

    1. Cookie,有时也用其复数形式 Cookies,指某些网站为了辨别用户身份.进行 session 跟踪而储存在用户本地终端上的数据(通常经过加密).例如在某个网站上保存了用户名和密码,3个月内 ...

  7. Django获取多个数据及文件上传

    1. 选择性别: 1)更新login.html模板 2)views.py中获取客户端提交的数据 3)当选择性别为“男”后,后台得到了gender=1. 2.选择爱好,可以多选,所以后台会获得多个数据. ...

  8. Unity3D for VR 学习(3): 暴风魔镜PC Input小改造–自己动手、丰衣足食

    在做手游的时候,80%时间是在PC调试的,例如业务逻辑.AI算法.核心玩法等. 拿到魔镜提供的demo,晕了,必须得安装到Android机器上,才能调试,究其原因,有三: 需要用到手机陀螺仪 需要用到 ...

  9. 在github fork的项目中推送与抓取

    github -- fork提交项目:自己的仓库和原仓库进行Git同步的操作. 1. 获取你fork的原仓库的更新过的最新代码:如果没有远程原始分支则需要增加. git remote add upst ...

  10. 用Visual C#开发基于OpenCV的Windows应用程序

    http://blog.163.com/wangxh_jy/blog/static/28233883201001581640283/ 关于详细的配置及程序运行截图,请下载:http://downloa ...