Linux下的screen(远程协作的用法)

1)screen运用场景(拷贝自网络):

来自产品工程的高级维护用户 David 打电话说:“为什么我不能在您部署的这些新机器上编译 supercode.c”。

您会问他:“您运行的是什么机器?”

David 答道:“ Posh”。(这个虚够的公司将它的 5 台生产服务器以纪念 Spice Girls 的方式命名)。这下您可以大显身手了,另一台机器由 David 操作:

# su - david

转到 posh:

# ssh posh

到达之后,运行以下代码:

# screen -S foo

然后呼叫 David:

“David,在终端运行命令 # screen -x foo”。

这使您和 David 的会话在 Linux shell 中联接在一起。您可以输入,他也可以输入,但彼此可以看到对方所做的事情。这避免了进入其他层次,而且双方都有相同的控制权。这样做的好处是 David 可以观察到您的故障诊断技巧,并能准确了解如何解决问题。

最后大家都能看到问题所在:David 的编译脚本对一个不在此新服务器上的旧目录进行了硬编码。将它装载后再次编译即可解决问题,然后 David 继续工作。您则可以继续之前的娱乐活动。

关于此技巧需要注意的一点是,双方需要以同一用户登录。screen 命令还可以:实现多个窗口和拆分屏幕。请阅读手册页获取更多相关信息。

对于 screen 会话,我还有最后一个技巧。要从中分离并让它打开,请输入 Ctrl-A D(即按住 Ctrl 键并点击 A 键。然后按 D 键)。

然后通过再次运行 screen -x foo 命令可以重新拼接起来。

2)screen的安装

# yum -y install screen

# rpm -qa screen

screen-4.0.3-16.el6.x86_64

3)screen的使用

# 开启一个名为team001的screen共享窗口

# screen -S team001

# 查看screen的窗口信息

# screen -ls

There is a screen on:

3334.team001    (Attached)

1 Socket in /var/run/screen/S-root.

在另外一个终端窗口:

# screen -x team001

然后,我们就可以看到两个终端窗口的数据是实时同步的了

4)退出screen

可以在任意一个窗口,输入 Ctrl-A D(即按住 Ctrl 键并点击 A 键。然后按 D 键)

时间: 2024-10-21 13:34:32

Linux下的screen(远程协作的用法)的相关文章

linux下Bash编程循环语句特殊用法之编写脚本(十)

linux下Bash编程while语句特殊用法之编写脚本(十) 1.循环控制: break:中断整个循环语句,即退出循环后执行脚本后面的语句 continue:中断当前本次循环,提前进入下一轮循环 exit:结束脚本运行 2.while死循环,即当不知道循环多少次时 格式 : while :; do 循环语句 done 3.while从输入重定向文件中每行读取并赋值给read变量 格式:  while read LINE;do 循环语句 done < 路径文件 4.实例脚本 4.1.找出/etc

全网最详细的Linux命令系列-Screen远程会话命令

screen 管理你的远程会话 你是不是经常需要 SSH 或者 telent 远程登录到 Linux 服务器?你是不是经常为一些长时间运行的任务而头疼,比如系统备份.ftp 传输等等.通常情况下我们都是为每一个这样的任务开一个远程终端窗口,因为他们执行的时间太长了.必须等待它执行完毕,在此期间可不能关掉窗口或者断开连接,否则这个任务就会被杀掉,一切半途而废了. 元凶:SIGHUP 信号 让我们来看看为什么关掉窗口/断开连接会使得正在运行的程序死掉. 在Linux/Unix中,有这样几个概念: 进

linux下遍历文件夹---opendir等用法

首先要说肯定是头文件,#include <sys/types.h>   #include <dirent.h> linux下遍历文件夹需要用到以下几个函数,其中有三个是必须的,其它几个是可选的. DIR* opendir(const char * name);   失败返回NULL.成功返回DIR结构体.注意DIR前面没有struct,如果加上编译器会warning struct dirent *readdir(struct DIR* dir);   失败返回NULL. void

linux下定时任务的工具crontab的用法

Linux计划任务工具cron用法详解 linux下大名鼎鼎的计划任务工具crontab的使用介绍baidu.google上多得让人眼花缭乱,本着"天下文章一大抄"的觉悟,加上本人日常工作中总结的使用经验,索性推出这篇笔记式文章,以供遗忘时翻阅之用. cron是linux系统下一个自动执行指定任务的程序,即包含"时间"."路径"."自动执行脚本"等要素,例如我想通过自动执行脚本"newcopy.sh"在凌晨

Linux下mysql实现远程连接

首先明白一点并不是mysql禁止远程连接,而是MYSQL的账号禁止远程连接.可能觉得我有点咬文嚼字了,不过我感觉分清这点还是很重要的.默认情况下,所有账号都是禁止远程连接的.在安装MYSQL的时候,在设置ROOT密码那里有一个CHECKBOX,选中的话就开启了ROOT的远程登陆功能,默认是没被选中的.利用: select * frommysql.user 查出所有的MYSQL用户,可以发现默认情况下,这些记录的host字段的值全都是localhost,这个host字段就是表示哪些机器可以利用此账

Linux 下 Shell 命令的分类及用法

导读 当你打算真正操纵好你的 Linux 系统,没有什么能比命令行界面更让你做到这一点.为了成为一个 Linux 高手,你必须能够理解 Shell命令的不同类型,并且会在终端下正确的使用它们. 在 Linux 下,命令有几种类型,对于一个 Linux 新手来说,知道不同命令的意思才能够高效和准确的使用它们.因此,在这篇文章里,我们将会遍及各种不同分类的 Linux Shell 命令.需要注意一件非常重要的事:命令行界面和 Shell 是不同的,命令行界面只是为你提供一个访问 Shell 的方式.

CentOS Linux下VNC Server远程桌面配置详解

http://www.ha97.com/4634.html PS:偶以前基本不用Linux的远程图形桌面,前几天有开发的同事配置CentOS的vnc有问题,找我解决,就顺便记录总结一下,这个总结是比较完整的.下面的配置在CentOS5.x和6.x.SUSE企业版亲测验证,其他发行版按理也通用: 一.安装相应桌面环境与vnc服务端和客户端: # yum groupinstall "GNOME Desktop Environment"(CentOS 5.x安装GNOME桌面环境) # yu

linux下的java远程调试jpda+tomcat

项目放到linux服务器了,服务器的环境或者数据可能和我们本地不一样,这个时候我们可能需要远程的断点进行调试,来查看请求过程中的各个变量的值.这里我们的应用服务器用的tomcat5.5.17 这个时候你需要知道JPDA这个概念. 简单的概括下JPDA: Java Platform Debugger Architecture(JPDA:Java平台调试架构) 由Java虚拟机后端和调试平台前端组成  1.Java虚拟机提供了Java调试的功能  2.调试平台通过调试交互协议向Java虚拟机请求服务

Linux下GoAccess的安装与全部用法

  GoAccess用户文档 一. GoAccess概述 1.1 GoAccess概述 goaccess是一个实时的web日志分析器,以及交互式查看器,在类Unix系统的终端(terminal)上运行,是一个基于GPL的自由软件.为需要可视化服务器报告的系统管理员提供快速而重要的HTTP统计信息.首先它会解析web日志文件,从被解析文件中收集数据,然后展示在控制台(console)或者X终端上.收集到的信息会在一个可视化/交互式的窗口中展示给用户,包括: 一般统计 该面板提供了几个指标的摘要,其