问 题场景:要在服务器上配置环境,但是我的电脑无法直接连到服务器上,通常要经过好几次ssh跳转。配环境需要设置好几个用户,这自然需要同时打开好几个连 接服务器的终端窗口,每个连接到服务器的终端窗口都要经过好几次ssh才能连接,不胜其烦。中转的电脑没有root权限,不能用iptables等工具设 置端口映射。
解决方法:在从我电脑起的下一跳电脑上使用screen创建好几个session窗口,每次连接到下一跳电脑上就可以直接进行配置环境的操作。
screen用法:
对一个事物最基本的操作就是增删改,用于screen就是掌握以下几种基本的操作:

  1. 如何创建一个新的session;
  2. 如何进入一个已经创建的session;
  3. 如何从一个已经创建的sesion退出而不销毁这个session;
  4. 如何销毁一个session;
  5. 如何修改一个session;
  6. 如何查询当前有多少个session

现在总结操作:
如何查询当前有多少个session:

[whb@jcwkyl misc]$ screen -ls
There are screens on:
        3708.pts-1.jcwkyl       (Detached)
        3863.pts-1.jcwkyl       (Detached)
        3915.lxi        (Attached)
3 Sockets in /var/run/screen/S-whb.

如何创建一个新的session:

[whb@jcwkyl misc]$ screen -S whb_login
其中-S参数表示为session指定一个名称,这样在查询的时候更容易知道应该连接到哪个session。

如何从一个已经创建的session中退出:

同时按下ctrl a两个键,松开后按下d。
[whb@jcwkyl misc]$ screen -ls
There are screens on:
        3708.pts-1.jcwkyl       (Detached)
        3863.pts-1.jcwkyl       (Detached)
        3915.lxi        (Attached)
        4021.whb_login  (Detached)
4 Sockets in /var/run/screen/S-whb.

如何进入一个已经创建的session:

[whb@jcwkyl misc]$ screen -r 3863
其中3863是进程pid,在screen -ls命令中显示出来的第一个域。
一个有用的选项是-x,它可以进入一个已经attach过的session。
[whb@jcwkyl misc]$ screen -ls
There are screens on:
        3708.pts-1.jcwkyl       (Detached)
        3915.lxi        (Attached)
        4021.whb_login  (Detached)
3 Sockets in /var/run/screen/S-whb.
[whb@jcwkyl misc]$ screen -x 3915

如何销毁一个session:

kill掉这个进程就可以
[whb@jcwkyl misc]$ kill 3863
[whb@jcwkyl misc]$ screen -ls
There are screens on:
        3708.pts-1.jcwkyl       (Detached)
        3915.lxi        (Attached)
        4021.whb_login  (Detached)
3 Sockets in /var/run/screen/S-whb.

如何修改一个session:

可以看session的帮助,
[whb@jcwkyl misc]$ man session
或者进入一个session以后,同时按下ctrl a,再按下?键。

---------------------------------------------------------------------------------

Screen

Installing:

in Ubuntu:

sudo apt-get install screen

in Gentoo:

sudo emerge app-misc/screen

Running:

sudo screen /dev/ttyUSB0 115200 8n1

Quitting screen: Ctrl-a k

参考文章===>http://wiki.eluaproject.net/Terminal%20Emulators%20for%20eLua

好用的工具---screen命令的更多相关文章

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

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

  2. Linux Screen命令使程序远离断网影响

    linux中强大的screen命令2008-12-02 21:53今天发现了一个“宝贝”,就是Linux的screen命令,对于远程登录来说,不仅提供了类似于nohup的功能,而且提供了我非常喜欢的“ ...

  3. Linux中命令行终端切换工具screen

    screen命令 本文转自:http://man.linuxde.net/screen Screen是一款由GNU计划开发的用于命令行终端切换的自由软件.用户可以通过该软件同时连接多个本地或远程的命令 ...

  4. Screen命令安装使用教程

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

  5. linux screen 命令 :离线运行程序

    screen工具是linux下虚拟终端的一个常用工具.在 发现这个工具之前,笔者经常在远程ssh中运行需要长时间处理数据的命令,比如远程编译安装软件,如果在编译的过程中网络断开,那这个编译进程就会停止 ...

  6. screen 命令基本操作教程

    sreen 命令提供的基本功能与 tmux 较为相似( 关于 tmux 基本操作可参见笔者的博文 终端复用工具 tmux 基本操作教程 ).screen 命令以会话( session )为基础为用户提 ...

  7. Linux之screen命令详解

    一.nohup 工作中经常会遇到这样的需求,通过SecureCRT或其它工具远程到服务器执行某个任务,而这个任务耗时又比较长,你又不得不等待它执行完毕,但是如果此间如果关掉窗口或断开连接又会导致任务被 ...

  8. Linux系统中的screen命令基本使用教程

    作为linux服务器管理员,经常要使用ssh登陆到远程linux机器上做一些耗时的操作. 也许你遇到过使用telnet或SSH远程登录linux,运行一些程序.如果这些程序需要运行很长时间(几个小时) ...

  9. 如何使用screen命令

    大家好,我是良许. 很多时候,我们都需要执行一些需要很长时间的任务.如果这时候,你的网络连接突然断开了,那么你之前所做的所有工作可能都会丢失,所做的工作可能都要重做一遍,这会浪费我们许多的时间,非常影 ...

随机推荐

  1. 第一章:CDib类库的建立

    VC++图像处理程序设计(第1版)    杨淑莹 编著     边奠英 主审 第一章 位图基础 Joanna-In-Hdu&Hust 手工打,印象更深刻 使用工具 VS2010 mfc  整本 ...

  2. SSM的整合

    框架的整合: 1. 依赖整合 aop的包: aspectweaver spring-aop spring核心: spring-context spring-web spring-webmvc spri ...

  3. [收藏转载链接]Opencv部分

    转载自-柳如风-http://www.cnblogs.com/rongfangliu/p/opencvlink.html [收藏夹整理]OpenCV部分   OpenCV中文论坛 OpenCV论坛 o ...

  4. 【Asp.net入门5-03】创建产品清单

  5. OneProxy实现mysql读写分离

    OneProxy for MySQL可以复用不同应用到后端数据库的连接,有效降低数据库的并发连接数:可以即时踢除不可用的节点,将应用请求转发到其他可用节点,保证业务服务的稳定性. 可透明地将查询语句分 ...

  6. vhost配置

    server { listen ; server_name local.*****.com; index index.html index.htm index.php; root /home/wwwr ...

  7. Python【异常处理】

    def f(): first = input('请输入除数:') second = input('请输入被除数:') try: first = int(first) second = int(seco ...

  8. python【数据类型:集合】

  9. 浅谈 vue实例 和 vue组件

    vue实例: import Vue from 'vue'; import app from './app'; import myRouter from './routers'; new Vue({ e ...

  10. java.lang.AutoCloseable

    java.lang.AutoCloseable和java.io.Closeable public interface AutoCloseable { void close() throws Excep ...