Linux中screen命令
screen是一款由GNU计划开发的用于命令行终端切换的自由软件。用户可以通过该软件同时连接多个本地或远程的命令行会话,并在其间自由切换。GNU Screen可以看作是窗口管理器的命令行界面版本。它提供了统一的管理多个会话的界面和相应的功能。
screen重要性
screen的重要性,主要是体现在它可以方便的在服务器上一直运行,只要服务器没有宕机,没有断电它就可以做到不用停止。其实后端工程师经常会遇到,要通过执行脚本处理一些数据,但这个脚本可能需要执行半天或者几天,screen就是最佳选择了,过一段时间登录到服务器上查看下运行状态,是否运行完成。没有完成挂起来继续运行。
screen 常用的参数
screen 命令参数很多,我们只看下平常用的比较多的几个
| 参数 | 说明 |
|---|---|
| ls | 列出当前所有的回话 |
| S | 大写的S,新建一个名称是xxx的会话 |
| r | 通过序号连接进程会话 |
| d | detach断开某个会话 |
| D | 与-d命令相同,但是会logout原来在screen里的用户 |
在每个screen 会话下,所有命令都以 ctrl+a开始的
| 参数 | 说明 |
|---|---|
| ctrl+a d | detach会话,将目前的 screen session 丢到后台执行,并会回到还没进 screen 时的状态,screen 都在继续执行,即使 logout 也不影响后台的执行 |
| ctrl+a k | 强行关闭当前的窗口 |
| ctrl+a z | 把当前的会话放到后台执行,用fg命令可以调回来 |
screen 使用
先模拟一个需要执行很长时间的脚本代码
test.php
<?php
sleep(10000);
echo 111;
?>
程序休眠10000秒之后输出 1111
先创建一个screen,然后执行它之后,退出登录状态
screen -S test
php test.php
创建名为test的screen,进入screen之后执行test.php。然后让脚本在 screen里面一直执行,按 Ctrl+a d让脚本在screen后台执行。
screen -S test
[detached from 3934.test]
exit 退出登录,等一段时间然后再登录上去,查看下脚本是否还在执行
ssh
screen -ls
There are screens on:
3934.test (02/25/2020 10:27:06 PM) (Detached)
名为test的screen ID 为3934,连接该screen并进入
screen -r 3934
php test.php
可以看到 test.php的脚本还在执行。
执行ctrl+a z,然脚本在后台执行,然后再使用fg调到前台
[1]+ Stopped screen -r 3934
执行fg
php test.php
再看下screen -d 和 -D
重新打开一个窗口,ssh之后,执行
screen -d 3934
[3934.test detached.]
然后查看前一个窗口,看看是否断开了screen
screen -r 3934
[remote detached from 3934.test]
再看下,-D,在第一个窗口
screen -r 3934
第二个窗口执行-D
screen -D 3934
[3934.test power detached.]
再看第一个窗口已经被强制退出登录了。
screen -r 3934
[remote power detached from 3934.test]
Connection to 127.0.0.1 closed.
作为开发人员,其实平常开发中只需要知道三个命令就能满足90%以上的使用范围了
screen -ls
screen -S
screen -R
ctrl+a d
Linux中screen命令的更多相关文章
- linux中screen命令的用法
http://www.9usb.net/201002/linux-screen-mingling.html 作为linux服务器管理员,经常要使用ssh登陆到远程linux机器上做一些耗时的操作.也许 ...
- Linux中Screen命令使用方法
一.使用Screen创建一个Session screen -S sessionName 注:sessionName是要删除的session名字 二.结束一个Screen创建的session 1.首先使 ...
- 13 Basic Cat Command Examples in Linux(转) Linux中cat命令的13中基本用法
Cat (串联) 命令是Linux/Unix开源系统中比较常用的一个命令.我们可以通过Cat命令创建一个或多个文件,查看文件内容,串联文件并将内容输出到终端设备或新的文件当中,这篇文章我们将会以实例的 ...
- Linux中exec命令相关
Linux中exec命令相关 exec和source都属于bash内部命令(builtins commands),在bash下输入man exec或man source可以查看所有的内部命令信息. b ...
- linux中touch命令参数修改文件的时间戳(转)
linux中touch命令参数不常用,一般在使用make的时候可能会用到,用来修改文件时间戳,或者新建一个不存在的文件,以下是linux中touch命令参数的使用方法: touch [-acm][-r ...
- linux中执行命令权限不够怎样处理
在linux中执行命令权限不够就要增加权限,先看遇到的情况 查看权限情况 那就赋予权限 执行命令
- Linux中监控命令top命令使用方法详解
收集了两篇关于介绍Linux中监控命令top命令的详细使用方法的文章.总的来说,top命令主要用来查看Linux系统的各个进程和系统资源占用情况,在监控Linux系统性能方面top显得非常有用,下面就 ...
- Linux中date命令的各种实用方法--转载
在linux环境中,不管是编程还是其他维护,时间是必不可少的,也经常会用到时间的运算,自己也曾经为时间的各种表示方法和如何修改时间而困惑,熟练运用date命令来表示自己想要表示的时间,肯定可以给自己的 ...
- linux中查找命令find、locate、whereis、which、type区别
linux中查找命令find.locate.whereis.which.type区别 1. find Java代码 find是最常见和最强大的查找命令,你可以用它找到任何你想找的文件.与查询数据库(/ ...
随机推荐
- 解决Android studio遇见Could not find common.jar (android.arch.core:common:1.0.0).错误
不知道怎么回事就发生的错误,翻墙找到的解决方法,如下: Error:Could not find common.jar (android.arch.core:common:1.0.0).Searche ...
- 使用xpath总是找不到
今天使用使用xpath,直接从网页上复制的 /html/body/div[3]/div[2]/div[2]/div[3]/table/tbody/tr[2]/td[3]/a 但是在代码中总是找不到文件 ...
- 20190710双人开黑CF模拟赛
Codeforces Round #571 (Div. 2) 日常被tanao_大佬带飞,我AC了A和C(B题没了...否则tanao_大佬肯定把我吊打) A. Vus the Cossack and ...
- 小程序redio 样式
小程序 radio 不写样式大概是这样的 数据为测试数据. 为了增加用户体验我们一下 美化后大概是这样的 给他设定头部.左边间距 ,和自身最小宽度 上代码: wxml: <radio-group ...
- python 类 --导入类
导入类 1.1.导入单个类 如何导入单个类 以上一节为例,编写一个car.py程序 编写一个新程序my_car.py 希望在my.car.py文件中直接使用car.py中的函数,使用from car ...
- HDU_1394_线段树
http://acm.hdu.edu.cn/showproblem.php?pid=1394 线段树入门题,每次读入一个数,就寻找在树中比它大的值的个数,然后更新树,把个数相加就是逆序数,每移动一个数 ...
- Codeforces Round #600 (Div. 2) E. Antenna Coverage
Codeforces Round #600 (Div. 2) E. Antenna Coverage(dp) 题目链接 题意: m个Antenna,每个Antenna的位置是\(x_i\),分数是\( ...
- MySQL8.0关系数据库基础教程(三)-select语句详解
1 查询指定字段 在 employee 表找出所有员工的姓名.性别和电子邮箱. SELECT 表示查询,随后列出需要返回的字段,字段间逗号分隔 FROM 表示要从哪个表中进行查询 分号为语句结束符 这 ...
- mybaits分页插件的使用
1.导入依赖坐标 <dependency> <groupId>com.github.pagehelper</groupId> <artifactId>p ...
- Kafka系列3:深入理解Kafka消费者
上面两篇聊了Kafka概况和Kafka生产者,包含了Kafka的基本概念.设计原理.设计核心以及生产者的核心原理.本篇单独聊聊Kafka的消费者,包括如下内容: 消费者和消费者组 如何创建消费者 如何 ...