时间:2021-05-19
Screen简介
Screen是一款由GNU计划开发的用于命令行终端切换的自由软件。用户可以通过该软件同时连接多个本地或远程的命令行会话,并在其间自由切换。GNU Screen可以看作是窗口管理器的命令行界面版本。它提供了统一的管理多个会话的界面和相应的功能。
官方网址:http:///software/screen/
GUN Screen:
在Screen环境下,所有的会话都独立的运行,并拥有各自的编号、输入、输出和窗口缓存。用户可以通过快捷键在不同的窗口下切换,并可以自由的重定向各个窗口的输入和输出。
Screen语法
$> screen [-AmRvx -ls -wipe][-d <作业名称>][-h <行数>][-r <作业名称>][-s ][-S <作业名称>] -A 将所有的视窗都调整为目前终端机的大小。 -d <作业名称> 将指定的screen作业离线。 -h <行数> 指定视窗的缓冲区行数。 -m 即使目前已在作业中的screen作业,仍强制建立新的screen作业。 -r <作业名称> 恢复离线的screen作业。 -R 先试图恢复离线的作业。若找不到离线的作业,即建立新的screen作业。 -s 指定建立新视窗时,所要执行的shell。 -S <作业名称> 指定screen作业的名称。 -v 显示版本信息。 -x 恢复之前离线的screen作业。 -ls或--list 显示目前所有的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<?phpsleep(10000);echo 111;?>程序休眠10000秒之后输出 1111
先创建一个screen,然后执行它之后,退出登录状态
screen -S testphp test.php创建名为test的screen,进入screen之后执行test.php。然后让脚本在 screen里面一直执行,按 Ctrl+a d让脚本在screen后台执行。
screen -S test[detached from 3934.test]exit 退出登录,等一段时间然后再登录上去,查看下脚本是否还在执行
ssh screen -lsThere are screens on: 3934.test (02/25/2020 10:27:06 PM) (Detached)名为test的screen ID 为3934,连接该screen并进入
screen -r 3934php test.php可以看到 test.php的脚本还在执行。
执行ctrl+a z,然脚本在后台执行,然后再使用fg调到前台
[1]+ Stopped screen -r 3934执行fgphp 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 -lsscreen -Sscreen -Rctrl+a dscreen常用操作
创建会话(-m 强制):
screen -dmS session_name# session_name session名称关闭会话:
screen -X -S [session # you want to kill] quit
查看所有会话:
screen -ls
进入会话:
screen -r session_name
总结
到此这篇关于Linux中的screen命令及使用方法的文章就介绍到这了,更多相关linux screen命令内容请搜索以前的文章或继续浏览下面的相关文章希望大家以后多多支持!
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
Linux终端中的操作均是使用命令行来进行的。因此,对于小白来说,熟记几个基本的命令行和使用方法能够较快的在Linux命令行环境中将python用起来。打开命令
效果图tail-n20filename说明:显示filename最后20行。Linux下tail命令的使用方法linuxtail命令用途是依照要求将指定的文件的
1.前言本文主要讲解如何在Linux系统下使用命令行工具模糊查找文件,本文的工具包括find命令的用法也介绍grep命令的使用方法,同时也有find与grep两
linux修改密码命令的方法是: 1、普通用户一般使用该命令都是修改登录密码,使用方法也很简单,只有在提示符下输入passwd,按照提示输入原密码,然后再两次
使用方法:用root权限在后台(比如screen里)运行这个脚本复制代码代码如下:#!/usr/bin/perl-wusestrict;submain{my@l