问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

linux创建 screen 会话是什么意思

发布网友 发布时间:2022-04-22 22:49

我来回答

1个回答

热心网友 时间:2023-07-11 18:30

作为linux服务器管理员,经常要使用ssh登陆到远程linux机器上做一些耗时的操作。   也许你遇到过使用telnet或SSH远程登录linux,运行一些程序。如果这些程序需要运行很长时间(几个小时),而程序运行过程中出现网络故障,或者客户机故障,这时候客户机与远程服务器的链接将终端,并且远程服务器没有正常结束的命令将*终止。   又比如你SSH到主机上后,开始批量的scp命令,如果这个ssh线程断线了,scp进程就中断了。在远程服务器上正在运行某些耗时的作业,但是工作还没做完快要下班了,退出的话就会中断操作了,如何才好呢?   我们利用screen命令可以很好的解决这个问题。实现在断开SSH的情况下,在服务器上继续执行程序。   那什么是screen命令?   Screen被称之为一个全屏窗口管理器,用他可以轻松在一个物理终端上获得多个虚拟终端的效果。   Screen功能说明:   简单来说,Screen是一个可以在多个进程之间多路复用一个物理终端的窗口管理器,这意味着你能够使用一个单一的终端窗口运行多终端的应用。Screen中有会话的概念,用户可以在一个screen会话中创建多个screen窗口,在每一个screen窗口中就像操作一个真实的telnet/SSH连接窗口那样。   Screen命令语法:   screen [-AmRvx -ls -wipe][-d <作业名称>][-h <行数>][-r <作业名称>][-s ][-S <作业名称>]   Screen命令参数:   -A -[rR] 将所有的视窗都调整为目前终端机的大小。   -c filename 用指定的filename文件替代screen的配置文件rsquo;.screenrcrsquo;.   -d [pid.tty.host] 断开screen进程(使用该命令时,screen的状态一定要是Attached,也就是说有用户连在screen里)。一般进程的名字是以pid.tty.host这种形式表示(用screen -list命令可以看出状态)。   -D [pid.tty.host] 与-d命令实现一样的功能,区别就是如果执行成功,会踢掉原来在screen里的用户并让他logout。   -h <行数>   指定视窗的缓冲区行数。   -ls或ndash;list 显示目前所有的screen作业。   -m 即使目前已在作业中的screen作业,仍强制建立新的screen作业。   -p number or name 预先选择一个窗口。   -r [pid.tty.host] 恢复离线的screen进程,如果有多个断开的进程,需要指定[pid.tty.host]   -R 先试图恢复离线的作业。若找不到离线的作业,即建立新的screen作业。   -s shell 指定建立新视窗时,所要执行的shell。   -S <作业名称> 指定screen作业的名称。(用来替代[pid.tty.host]的命名方式,可以简化操作).   -v 显示版本信息。   -wipe 检查目前所有的screen作业,并删除已经无法使用的screen作业。   -x 恢复之前离线的screen作业。   Screen命令的常规用法:   screen -d -r:连接一个screen进程,如果该进程是attached,就先踢掉远端用户再连接。   screen -D -r:连接一个screen进程,如果该进程是attached,就先踢掉远端用户并让他logout再连接   screen -ls或者-list:显示存在的screen进程,常用命令   screen -m:如果在一个Screen进程里,用快捷键crtl+a c或者直接打screen可以创建一个新窗口,screen -m可以新建一个screen进程。   screen -dm:新建一个screen,并默认是detached模式,也就是建好之后不会连上去。   screen -p number or name:预先选择一个窗口。   Screen实现后台运行程序的简单步骤:   1> 要进行某项操作时,先使用命令创建一个Screen:   代码如下:   [linux@user~]$ screen -S test1   2>接着就可以在里面进行操作了,如果你的任务还没完成就要走开的话,使用命令保留Screen:   代码如下:   [linux@user~]$ Ctrl+a+d #按Ctrl+a,然后再按d即可保留Screen   [detached] #这时会显示出这个提示,说明已经保留好Screen了   如果你工作完成的话,就直接输入:   代码如下:   [linux@user~]$ exit #这样就表示成功退出了   [screen is terminating]   3> 如果你上一次保留了Screen,可以使用命令查看:   代码如下:   [linux@user~]$ screen -ls   There is a screen on:   9649.test1 (Detached)   恢复Screen,使用命令:   代码如下:   [linux@user~]$ screen -r test1 (or 9649)   Screen命令中用到的快捷键   Ctrl+a c :创建窗口   Ctrl+a w :窗口列表   Ctrl+a n :下一个窗口   Ctrl+a p :上一个窗口   Ctrl+a 0-9 :在第0个窗口和第9个窗口之间切换   Ctrl+a K(大写) :关闭当前窗口,并且切换到下一个窗口(当退出最后一个窗口时,该终端自动终止,并且退回到原始shell状态)   exit :关闭当前窗口,并且切换到下一个窗口(当退出最后一个窗口时,该终端自动终止,并且退回到原始shell状态)   Ctrl+a d :退出当前终端,返回加载screen前的shell命令状态   多窗口   screen,像许多的窗口管理器一样,能支持多窗口。这个功能在处理多个任务且同时没有打开新的会话时 很有用。作为一个系统管理员,我常常要同时开四五个SSH会话。在每个shell下,我可能要处理两三个任务。不使用screen的话,需要15个SSH 会话,15次登录,15个窗口等等。使用screen,每个系统都分配到一个单独的会话中,我通过screen来管理系统上不同的作业。   要打开新的窗口,只需要使用ldquo;Ctrl-Ardquo;ldquo;crdquo;。创建的新的窗口会显示一个默认的命令提示符。例如,我可以运行top命令后再打开一个新的窗口来做其它的工作。Top继续留在那运行!可以亲身实验一下,启动screen并运行top。(注:为了节省空间我截断了多个屏幕。)   启动top   代码如下:   Mem: K av, K used, 5432K free,   0K shrd, 11752K buff   Swap: K av, 53320K used, K free   K cached < p> PID USER PRI NI SIZE RSS SHARE STAT %CPU %ME   6538 root 25 0 1892 1892 596 R 49.1 0.3   6614 root 16 0 1544 1544 668 S 28.3 0.3   7198 admin 15 0 1108 1104 828 R 5.6 0.2   现在可以通过ldquo;Ctrl-Ardquo;ldquo;crdquo;来打开一个新窗口   代码如下:   [admin@ensim admin]$   To get back to top, use "Ctrl-A "n"   Mem: K av, K used, 5440K free,   0K shrd, 11960K buff   Swap: K av, 53320K used, K free   K cached < p> PID USER PRI NI SIZE RSS SHARE STAT %CPU %ME   6538 root 25 0 1892 1892 596 R 48.3 0.3   6614 root 15 0 1544 1544 668 S 30.7 0.3   你可以创建多个窗口然后通过ldquo;Ctrl-Ardquo;ldquo;nrdquo;切换到下一个窗口,或者使用ldquo;Ctrl-Ardquo;ldquo;prdquo;返回上一个窗口。当你在其它窗口工作时,其它窗口的每个程序都会保持运行。   退出screen   有两种方式退出screen。第一种和登出一个shell一样,你可以通过ldquo;Ctrl-Ardquo;ldquo;Krdquo;或者ldquo;exitrdquo;来终止一个窗口。这样当前的窗口会被关闭,如果你打开了多个窗口,你就会直接转到其余中的一个,而如果是仅有的一个窗口时,你就退出了screen。   另外一种退出screen的方式是分离窗口。这种方式只是简单地关闭了窗口但进程仍运行着。如果你有确定要长时间执行的进程,还需要关闭SSH程序时,你便可以使用ldquo;Ctrl-Ardquo;ldquo;drdquo;分离窗口。这会使你回到shell中。所有的screen窗口都待在那里,你可以稍后重新接管它们。(译者注:这很像我们实际中的最小化窗口和程序后台运行)   接管会话   假设你正用着screen花了很长时间编译着一个程序,突然间你的连接断开了。请不用担心,screen会保存你的编译进度。重新登录你的操作系统后使用screen列表工具查看有哪些会话正在运行:   代码如下:   [root@gigan root]# screen -ls   There are screens on:   31619.ttyp2.gigan (Detached)   4731.ttyp2.gigan (Detached)   2 Sockets in /tmp/screens/S-root.   在这里,我有两个不同的screen会话。要需要重新接管其中一个,使用恢复窗口的命令:   代码如下:   [root@gigan root]#screen -r 31619.ttyp2.gigan   只需要使用 -r 选项再接会话的名,现在你便可以重新回到刚才的屏幕。令人欣喜的是,你还可以在任何地方重新接管。不论在办公室还是其它客户端上,你都可以使用screen来启动一项工作然后退出。   多窗口   screen,像许多的窗口管理器一样,能支持多窗口。这个功能在处理多个任务且同时没有打开新的会话时 很有用。作为一个系统管理员,我常常要同时开四五个SSH会话。在每个shell下,我可能要处理两三个任务。不使用screen的话,需要15个SSH 会话,15次登录,15个窗口等等。使用screen,每个系统都分配到一个单独的会话中,我通过screen来管理系统上不同的作业。   要打开新的窗口,只需要使用ldquo;Ctrl-Ardquo;ldquo;crdquo;。创建的新的窗口会显示一个默认的命令提示符。例如,我可以运行top命令后再打开一个新的窗口来做其它的工作。Top继续留在那运行!可以亲身实验一下,启动screen并运行top。(注:为了节省空间我截断了多个屏幕。)   启动top   代码如下:   Mem: K av, K used, 5432K free,   0K shrd, 11752K buff   Swap: K av, 53320K used, K free   K cached < p> PID USER PRI NI SIZE RSS SHARE STAT %CPU %ME   6538 root 25 0 1892 1892 596 R 49.1 0.3   6614 root 16 0 1544 1544 668 S 28.3 0.3   7198 admin 15 0 1108 1104 828 R 5.6 0.2   现在可以通过ldquo;Ctrl-Ardquo;ldquo;crdquo;来打开一个新窗口   代码如下:   [admin@ensim admin]$   To get back to top, use "Ctrl-A "n"   Mem: K av, K used, 5440K free,   0K shrd, 11960K buff   Swap: K av, 53320K used, K free   K cached < p> PID USER PRI NI SIZE RSS SHARE STAT %CPU %ME   6538 root 25 0 1892 1892 596 R 48.3 0.3   6614 root 15 0 1544 1544 668 S 30.7 0.3   你可以创建多个窗口然后通过ldquo;Ctrl-Ardquo;ldquo;nrdquo;切换到下一个窗口,或者使用ldquo;Ctrl-Ardquo;ldquo;prdquo;返回上一个窗口。当你在其它窗口工作时,其它窗口的每个程序都会保持运行。   退出screen   有两种方式退出screen。第一种和登出一个shell一样,你可以通过ldquo;Ctrl-Ardquo;ldquo;Krdquo;或者ldquo;exitrdquo;来终止一个窗口。这样当前的窗口会被关闭,如果你打开了多个窗口,你就会直接转到其余中的一个,而如果是仅有的一个窗口时,你就退出了screen。   另外一种退出screen的方式是分离窗口。这种方式只是简单地关闭了窗口但进程仍运行着。如果你有确定要长时间执行的进程,还需要关闭SSH程序时,你便可以使用ldquo;Ctrl-Ardquo;ldquo;drdquo;分离窗口。这会使你回到shell中。所有的screen窗口都待在那里,你可以稍后重新接管它们。(译者注:这很像我们实际中的最小化窗口和程序后台运行)   接管会话   假设你正用着screen花了很长时间编译着一个程序,突然间你的连接断开了。请不用担心,screen会保存你的编译进度。重新登录你的操作系统后使用screen列表工具查看有哪些会话正在运行:   代码如下:   [root@gigan root]# screen -ls   There are screens on:   31619.ttyp2.gigan (Detached)   4731.ttyp2.gigan (Detached)   2 Sockets in /tmp/screens/S-root.   在这里,我有两个不同的screen会话。要需要重新接管其中一个,使用恢复窗口的命令:   代码如下:   [root@gigan root]#screen -r 31619.ttyp2.gigan   只需要使用 -r 选项再接会话的名,现在你便可以重新回到刚才的屏幕。令人欣喜的是,你还可以在任何地方重新接管。不论在办公室还是其它客户端上,你都可以使用screen来启动一项工作然后退出。
linux技巧之使用screen管理你的远程会话

screen将创建一个执行shell的全屏窗口,你可以执行任意shell,就像在ssh窗口一样。(2),[xuefeng@ku6]#screen vi abc screen创建一个执行vi abc的单独窗口会话,退出vi 将退出该窗口 (3),还可以在已有screen会话窗口中创建新的窗口,在当前sceen窗口中键入C-a c,即Ctrl+a,再按下c键。重新控制各...

linux screen命令

Screen是一款由GNU计划开发的用于命令行终端切换的自由软件。用户可以通过该软件同时连接多个本地或远程的命令行会话,并在其间自由切换。GNU Screen可以看作是窗口管理器的命令行界面版本。它提供了统一的管理多个会话的界面和相应的功能。在Screen环境下,所有的会话都独立的运行,并拥有各自的编号、输入、...

Linux系统中的screen命令基本使用教程

Screen中有会话的概念,用户可以在一个screen会话中创建多个screen窗口,在每一个screen窗口中就像操作一个真实的telnet/SSH连接窗口那样。Screen命令语法:screen [-AmRvx -ls -wipe][-d 作业名称][-h 行数][-r 作业名称][-s ][-S 作业名称]Screen命令参数:-A -[r|R] 将所有的视窗都调整为目前终端机的大...

Linux服务器中 screen的用法

Linux服务器中的screen工具是一个强大的窗口管理器,它允许用户在单个物理终端上同时管理多个线程,就像操作多个SSH连接窗口一样。screen的核心功能是会话管理,每个会话下可以创建多个窗口。安装screen命令在Linux中相对简单,如果你的系统未安装,CentOS可以通过执行"yum install screen",Debian或Ubuntu则使用"...

Linux终端命令神器--Screen命令

Debian/Ubuntu apt install screen Attached :表示当前screen正在作为主终端使用,为活跃状态。Detached :表示当前screen正在后台使用,为非激发状态。查看已存在终端 screen -ls 创建一个叫Hello的虚拟终端 screen -S Hello 进入虚拟终端32307 screen -r 32307 There is no screen to be resumed ...

linux screen命令的用法

Linux中的screen命令在服务器管理中扮演着重要角色。当需要在一个服务器上运行多个长生命周期的进程,如持续服务,而这些进程需要占用整个控制台,一旦控制台被关闭,进程就会停止运行。这时,screen命令就显得尤为实用,它允许用户创建多个独立的"控制面板"(screen),每个面板可以承载不同的任务,确保它们...

linux怎么使用screen命令

在大多数Linux发行版中,screen命令是默认安装的。如果没有安装,可以使用包管理器进行安装。例如,在基于Debian的系统上,可以使用apt-get命令安装:bash sudo apt-get install screen 二、基本用法 1. 启动screen会话:bash screen 执行此命令后,会启动一个新的终端窗口,你可以在其中运行程序或命令。

linux screen 干什么用的

结束当前screen会话。查看运行的screen回话,包括正在运行和结束的:[root@bogon ~]# screen -ls 指定screen编号,进入相应的screen会话:[root@bogon ~]# screen -r 3134 按ctrl+d后直接退出screen,并且终止:通过screen -ls可以看到3134会话已经没有了:再运行screen -r 3134已经无法进入会话了:...

Linux centos screen命令基础用法

sudo yum install screen 或者 sudo apt-get install screen,取决于你的包管理器。一旦安装完成,你可以开始使用。创建新会话的步骤很简单,只需在终端输入`screen`并回车,或者输入特定名称以方便识别,如:`screen -S mySession`。要查看当前的screen会话列表,使用`CTRL+A`后按`C`。重新连接已断开...

如何使用screen

screen -p number or name:预先选择窗口 Screen实现台运行程序简单步骤: 一&gt; 要进行某项操作先使用命令创建Screen: 代码: [linux@user~]$ screen -S test一 二&gt;接着面进行操作任务没完要走使用命令保留Screen: 代码: [linux@user~]$ Ctrl+a+d #按Ctrl+a再按d即保留Screen [detached] #显示提示说明已经...

linux screen命令 linux安装screen linuxscreen用法 linux删除screen Linux screen简单用法 centos安装screen centos8安装screen linux source linux的会话
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
wifi移动电源是不是冲上电就能发出热点的啊? 要不要像路由一样定时缴费... ...有输密码开锁,那么这辆ofo共享单车别人能扫码骑走吗? 可怜九月初三夜 露似珍珠月似弓什么季节 ...点没了,怎么找都找不到, 重新开机也不行,window7旗舰版,求高手指点... window7系统 任务栏消失了 怎么调出来 ? window7旗舰版下方任务栏怎样不显示这种? window7显示隐藏任务栏的方法 朗逸机油复位灯怎么消除 大众朗逸机油保养灯怎么消? 用温度计测体温需要几分钟 如何在云服务器上部署持久运行scrapy 《怎样实现通过shell脚本将用户踢出系统》 linux下为什么要删除普通用户,提示xxx currently logged in Linux怎么使用screen命令 如何使用screen Linux中踢出其他正在SSH登陆用户的命令是哪个?? ubuntu同一个用户可以在多地同时登录,请问怎么踢掉正在进行的其他登录? cisco交换机一直vty有人占用怎么踢掉acl也做过不起作用谁能帮帮 如何强制踢出Linux中登录的用户 linux 如何杀掉 tty终端 黑石山英雄难度达基萨斯将军怎么过 炉石传说黑石山英雄模式维克多奈法利奥斯怎么过 炉石传说怎么过英雄难度黑石山第一章 炉石传说怎么打黑石山英雄难度格力斯通 五谷杂粮怎么煮才好吃呢? 求教黑石山英雄难度最后一关奈法利安 黑石山英雄难度攻略一区裁决者怎么过 粗粮怎么煮 炉石传说黑石山英雄难度拉格纳罗斯怎么打 五谷杂粮怎样做,煮起来更加软糯有什么方法 如何剔除Linux在线用户 詟袭虂鎴戣&#xFFFD;鎶曡瘔婀栧寳鐪佹&#xFFFD;绌村竞浜轰缭鍏&#xFFFD;徃.楠楁姇淇濅汉镄勯挶.锲犱负鎴戠殑灏忚溅浜ょ殑鍏ㄤ... 关于迅雷下载速度慢的问题,求高手帮忙 银行贷款5万一年利息多少钱? 徐山徐香猕猴桃产自哪里? 向银行贷款5万需要什么条件 银行贷款5万元,一年的利息是多少? 个人银行贷款5万需要什么条件 在银行贷款5万需要满足什么条件 徐香猕猴为什么那么甜?是品质原因还是认为的添加了东西? 个人怎样向银行贷款5万? 银行贷款5万元,一年利率多少还有利息是多少? 猕猴桃分几大类? 去银行贷款5万需要什么条件 辰颐物语的徐香猕猴桃甜不甜,是从原产地直接发货的吗? 我想在银行贷款5万,三年还清,每个月要还多少钱? 我要在银行贷款5万,怎样才能贷款到 徐香猕猴桃这个品种是不是比普通的猕猴桃更好吃一些,在辰颐物语买行不行? 为什么卖水果的说徐香猕猴桃硬的可以吃就是真的 银行贷款5万元一年利息多少- 问一问