避免脚本在关闭远程终端,或网络断开时停止运行,就要使用到screen
命令。screen 中有会话的概念,可以在一个 screen 会话中创建多个 screen 窗口,在每一个 screen 窗口中就像操作一个真实的 telnet/SSH 连接窗口一样。
# 可以直接使用yum安装[root@xuexi ~]# yum -y install screen # 也可以挂载 CentOS7 的光盘镜像安装[root@xuexi ~]# rpm -ivh /mnt/Packages/screen-4.1.0-0.25.20120314git3c2946.el7.x86_64.rpm准备中... ################################# [100%]正在升级/安装... 1:screen-4.1.0-0.25.20120314git3c29################################# [100%]
直接在命令行键入 screen 命令
[xf@xuexi ~]$ screen
screen 会创建一个全新的 shell 窗口,你可以执行任意程序,就像 在ssh 窗口一样。
比如说我们使用 vim 创建一个 txt 文件,并输入一部分数据。
[xf@xuexi ~]$ vim a.txt//并随意输入一些数据abbcccddddeeeeeffffff
输入完成后退出插入模式回到正常模式,按下 <Ctrl>
+a
+d
此时会显示如下部分
[root@xuexi ~]# screen[detached from 10992.pts-0.xuexi] //分离出一个独立的会话
一段时间后,或者关闭了当时的终端,如果还想要回到之前的 screen 会话
[root@xuexi ~]# screen -ls //查看已经建立会话的IDThere is a screen on: 10992.pts-0.xuexi (Detached)1 Socket in /var/run/screen/S-root. [root@xuexi ~]# screen -r 10992 //重新建立会话
分离出独立会话后,即使关闭当前终端,也可再次使用。如果想关闭 screen 会话,使用 exit
命令。
screen -S [会话名称]
:指定建立会话的名称[root@xuexi ~]# screen -S test[detached from 11347.test][root@xuexi ~]# screen -lsThere is a screen on: 11347.test (Detached)1 Socket in /var/run/screen/S-root.
screen -ls
: 列出当前所有的会话screen -r [会话ID|会话名称]
:回到指定会话,可以是会话名称,也可以是会话 ID[root@xuexi ~]# screen -r test[detached from 11347.test][root@xuexi ~]# screen -r 11347[detached from 11347.test]
以上就是使用 screen 后台实时执行命令的介绍。
本文系转载,前往查看
如有侵权,请联系 cloudcommunity@tencent.com 删除。
本文系转载,前往查看
如有侵权,请联系 cloudcommunity@tencent.com 删除。