Linux screen命令

screen命令

一、简介

Screen是一款终端模拟的屏幕管理器,用于命令行终端自由切换。

当我们需要执行一个用时较多的作业,不希望自己或者他人误操作关闭终端导致作业中断,可以进入screen,这样,当终端关闭,作业仍会继续执行。

GNU’s Screen 官方站点:http://www.gnu.org/software/screen/

 

二、语法

screen [ -options ] [ cmd [ args ] ]

screen -r [[pid.]tty[.host]]

screen -r sessionowner/[[pid.]tty[.host]]

 

三、常用参数

screen -S “screenname”–> screen作业命名
screen –ls
-list
->
列出当前所有的session

screen –r “screenname ”–>
回到“screenname ”这个session
screen -d –r “screenname ”–>
分离出其他运行的screen(并在这里重新连接)

ctrl+d exit 退出当前screen(会话)

 

四、使用screen

远程登陆上CentOS7,初始界面如下:

Linux screen命令

 

我们可以先查看一下是否安装了screen,下图表示还未安装

Linux screen命令

 

找到光盘默认挂载区域,找到screen-4.1.0-0.23.20120314git3c2946.el7_2.x86_64.rpm包,下图红色部分就是screenrpm安装包

Linux screen命令

 安装screen-4.1.0-0.23.20120314git3c2946.el7_2.x86_64.rpm

 Linux screen命令

此时已经安装成功screen包,查看是否已有screen命令,键入screen,回车,这时没有出现”Command not found“,证明已经安装成功

Linux screen命令

 

这时已经进入了screen,我们可以利用screen  -ls 或者-list列出当前所有存在的screen,可以看到,默认screen名字是(当前终端名.主机名前缀)的形式

Linux screen命令

 

我们也可以自定义screen 的名字

格式为screen S (注意,S是大写的) screenname

Linux screen命令

 

这时,再利用screen  -ls 或者-list列出当前所有存在的screen,可以看到,现在screen名字是Tom,也就是我们刚才自定义的名字。

Linux screen命令

 

Tom这个screen下,运行ping命令来模拟一个执行时间很长的操作。

Linux screen命令

 

再开一个终端,可以看到Tom这个screenAttached状态

Linux screen命令

 

当关闭正在执行ping命令的终端,此时可以看到Tom这个screenDetached状态,表明终端已经关闭。

Linux screen命令

 

但是ping命令仍然在执行,并没有停止,通过ps ef|grep ping

查看当前进程中有ping这个进程,说明执行命令的终端关闭,也不会影响命令的继续执行。

Linux screen命令

 

执行命令的终端关闭后,我们想要再进入Tomscreen,可执行screen -r  “screenname “

Linux screen命令

 

回车,可以看到ping 127.0.0.1仍然在执行

Linux screen命令

 

Ctrl+C 强制退出ping 127.0.0.1,按ctrl+d或输入exit退出当前screen

Linux screen命令

 

此时screen已经全部退出

Linux screen命令

 

 

 

 

 

原创文章,作者:liumengjiao,如若转载,请注明出处:http://www.178linux.com/80199

(2)
liumengjiaoliumengjiao
上一篇 2017-07-13 11:54
下一篇 2017-07-13 15:12

相关推荐

  • 测试so接口函数的脚本 [python]

    下面是一个测试solib库中调用函数的测试脚本,但该脚本还存在这一些问题,我目前无法理解和解决; 问题: 1.我定义了logging采用日志滚动的方式,写日志,并且每个日志的大小是20M,但测试结果发现日志连1M都没到就开始轮转了,并且在轮转过程中,还出现logging写日志,却发现,日志轮转了,结果竟然报了,轮转日志不存在。 Traceback (most…

    Linux干货 2016-01-05
  • N25期第五周作业

    1.显示当前系统上root、fedora或user1用户的默认shell grep -E ‘^(root|ftp|sync)’ /etc/passwd|cut -d: -f7 2.找出/etc/rc.d/init.d/functions文件中某单词后面跟一组小括号的行,形如:hello() grep ‘\b.*\b()’ /etc/rc.d/init.d/f…

    Linux干货 2016-12-26
  • awk用法进阶

    一、控制语句 1 if-else语句        使用场景:对awk取得的整行或某个字段做条件判断        语法:         &nbsp…

    Linux干货 2016-09-21
  • Java线程

    线程是一个单独程序流程。多线程是指一个程序可以同时运行多个任务,每个任务由一个单独的线程来完成。也就是说,多个线程可以同时在一个程序中运行,并且每一个线程完成不同的任务。程序可以通过控制线程来控制程序的运行,例如线程的等待、休眠、唤起线程等。本章将向读者介绍线程的机制、如何操作和使用线程以及多线程编程。  1. 线程的基本知识   &nb…

    2015-06-08
  • 小练习题。【第四周】

    1、复制/etc/skel目录为/home/tuser1,要求/home/tuser1及其内部文件的属组和其他用户均没有任何访问权限。 home]# chmod g-rwx,o-rwx -R tuser1 2、编辑/etc/group文件,添加组hadoop。 /]# vim /etc/group …

    Linux干货 2016-11-26
  • 数据的游戏:冰与火

    我对数据挖掘和机器学习是新手,从去年7月份在Amazon才开始接触,而且还是因为工作需要被动接触的,以前都没有接触过,做的是需求预测机器学习相关的。后来,到了淘宝后,自己凭兴趣主动地做了几个月的和用户地址相关数据挖掘上的工作,有一些浅薄的心得。下面这篇文章主要是我做为一个新人仅从事数据方面技术不到10个月的一些心得,也许对你有用,也许很傻,不管怎么样,欢迎指…

    Linux干货 2016-08-15