Linux - 多窗口管理器Screen程序
GNU's Screen
homepage
Screen是由GNU计划开发的用于命令行终端切换的自由软件,可以看作是窗口管理器的命令行界面版本。
可以通过该软件同时连接多个本地或远程的命令行会话,并在其间自由切换。
- 多窗口
在Screen环境下,所有的会话都独立的运行,并拥有各自的编号、输入、输出和窗口缓存。
用户可以通过快捷键在不同的窗口下切换,并可以自由的重定向各个窗口的输入和输出。 - 会话共享与限制
可以让一个或多个用户从不同终端多次登录一个会话,并共享会话的所有特性(比如可以看到完全相同的输出)。
同时提供了窗口访问权限的机制,可以对窗口进行密码保护。 - 会话恢复与分离
如果Screen本身没有终止,在其内部运行的会话都可以恢复。即使网络连接中断,只要再次登录后执行screen -r就可以恢复先前已经打开的会话。
同样也可以执行分离命令detach,在保证里面的程序正常运行的情况下让Screen挂起(切换到后台)。
安装
CentOS系统中执行:yum install screen
Debian/Ubuntu系统执行:apt-get install screen
常用命令
列出所有会话:screen -ls
创建一个随机命名的会话:screen
创建一个名称为test的会话:screen -S test
分离test会话,但会话中的任务会继续执行:screen -d test
通过screen name恢复test会话:screen -r test
通过session ID恢复test会话:screen -r <session ID>
创建一个处于分离模式(Detached),名称为test的会话:screen -dmS test
使用总结
(Detached)---->挂起状态,无终端在连接会话
(Attached)---->有终端在连接会话。
在会话中输入exit:永久退出本会话,也即是删除本会话,显示信息“screen is terminating”。
多个session之间切换:先分离会话回到shell,再通过screen -ls查看会话列表,然后使用screen -r恢复到目标会话。
停止screen session:会话中输入exit正常退出,或者 kill -9 PID (session ID同时也是PID)。
对于处于Attached模式的会话,不能直接screen -r,需要先screen -d,然后才能screen -r。
Note
不要在session中嵌套建立session。
不建议在一个session中对另一个session做相关操作,例如:在session中直接恢复其他session会话。
Linux - 多窗口管理器Screen程序的更多相关文章
- Rsync,Linux日志及Screen工具介绍
第十六次课 Rsync,Linux日志及Screen工具介绍 目录 一.rsync工具介绍 二.rsync常用选项 三.rsync通过ssh同步 四. rsync通过服务同步 五.linux系统日志 ...
- Linux经久不衰的应用程序
Linux里面的应用程序一贯以高安全性,高性价比(功能/所占空间),此次记录一下Linux里面比较常用的而且经久不衰的应用程序. Shell: bash(它结合了 csh ...
- linux下使用screen和ping命令对网络质量进行监控
linux下使用screen和ping命令对网络质量进行监控 场景:应用连接云服务器经常偶尔会出现连接不上的情况,android和IOS端连接的时候也会出现tcp延时5秒以上,现在想验证是否是云服务商 ...
- Linux Bash命令关于程序调试详解
转载:http://os.51cto.com/art/201006/207230.htm 参考:<Linux shell 脚本攻略>Page22-23 Linux bash程序在程序员的使 ...
- Linux Epoll介绍和程序实例
Linux Epoll介绍和程序实例 1. Epoll是何方神圣? Epoll但是当前在Linux下开发大规模并发网络程序的热门人选,Epoll 在Linux2.6内核中正式引入,和select类似, ...
- 在Linux系统如何让程序开机时自动启动
在Linux系统如何让程序开机时自动启动 核心提示:系统的服务在开机时一般都可以自动启动,那在linux系统下如果想要程序在开机时自动启动怎么办?我们知道在 windows系统“开始”--& ...
- Linux下执行Java程序报错
在linux下编译java程序,执行javac编译生成class文件时,在centos7终端输入如,javac hello.java 会提示未找到指令,但用java -verison测试环境变量 ...
- linux 英汉词典程序shell+postgresql版
在linux控制台下工作,有时候遇到不懂的单词,想要找个linux下的词典程序,搜寻无果,只好自己动手写个了. 首先获取词典文本文件,在github上找到一个 建立数据库 create databas ...
- Linux环境中Qt程序的手工发布
Linux环境中Qt程序的手工发布
随机推荐
- CSS3 Box-sizing(转载)
转载自:W3CPLUS Airen的博客:http://www.w3cplus.com/content/css3-box-sizing box-sizing是CSS3的box属性之一.一说到CSS的盒 ...
- db2开启监控monitor 查看快照snapshot
ths https://blog.csdn.net/huaishu/article/details/9671771 #查看监控器 db2 get monitor switches #打开监控器db ...
- 【Nodejs】Nodejsの環境構築
参考URL:http://www.runoob.com/nodejs/nodejs-install-setup.html Windowにインストールする方法を紹介します. ▲ダウンロードURL:htt ...
- 【读书笔记】深入应用C++11代码优化与工业级应用 读书笔记01
第一章 使用C++11让程序更简洁.更现代 1.1 类型推导 1.1.1 auto类型推导 1.auto关键字的新意义 不同于python等动态类型语言的运行时进行变量类型的推导,隐式类型定义的类 ...
- Python项目--Scrapy框架(二)
本文主要是利用scrapy框架爬取果壳问答中热门问答, 精彩问答的相关信息 环境 win8, python3.7, pycharm 正文 1. 创建scrapy项目文件 在cmd命令行中任意目录下执行 ...
- jsp相关笔记(二)
在jsp中将数据库表格内容读出为一个表格,并在表格中添加超链接: <%@ page language="java" contentType="text/html; ...
- Java第三次实验敏捷开发与XP实验
实验三-1 1.实验要求: 实验三 敏捷开发与XP实践 http://www.cnblogs.com/rocedu/p/4795776.html, Eclipse的内容替换成IDEA 参考 http: ...
- redis 一些操作命令
# 删除laravel keyredis-cli -h 10.9.103.15 -a password keys "laravel*" | xargs redis-cli -h 1 ...
- CMD命令启动和关闭SQL服务
1.开启:net start mssqlserver 2.关闭:net stop mssqlserver
- jdk8 永久代变更
java8 去掉了永久代permgen(又称非堆,其实也是堆的一部分),类的方法代码,常亮,方法名,静态变量等存放在永久代中 改为使用元空间 Metaspace , Metaspace 不在是堆的一部 ...