0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

如何安装和使用screen命令

CHANBAEK 来源: myfreax 作者: myfreax 2023-01-17 17:41 次阅读

您是否曾经遇到过在远程计算机上执行长时间运行的任务,突然连接中断,SSH会话终止以及工作丢失的情况。

在本教程中,我们将说明如何安装screen命令并说明如何使用screen命令,如何使用screen运行后台命令,进程与任务。

screen或GNU screen是终端多路复用器。 换句话说,这意味着您可以启动screen会话,然后在该会话中打开任意数量的窗口,也就是虚拟终端。

即使它们的窗口不可见,在Screen中运行的进程也将继续运行。

如今,大多数Linux发行版中都已预先安装screen命令。 可以运行命令screen --version检查它是否已安装在你的Linux系统。 命令将会screen的版本信息

如果您的系统上未安装screen,则可以使用发行版的软件包管理器轻松安装它。

如果你的计算机运行的是基于Debian的Linux发行版。 例如Ubuntu和Linux mint,可以运行命令sudo apt install screen安装screen。

如果你的计算机运行的是基于Redhat的Linux发行版。 例如CentOS和Fedora,可以运行命令sudo apt install screen安装screen。

sudo yum install screen #for centos and fedora
sudo apt install screen #for Ubuntu and Debian
screen --version
Screen version 4.06.02 (GNU) 23-Oct-17

启动 screen

要开始screen会话,只需在终端运行screen 命令即可。 这将打开一个screen会话,创建一个新窗口,并在该窗口中启动shell。

当您运行多个screen会话时,命名会话非常有用。 要创建命令的会话,请运行命令screen -S session_name

现在您已经打开了一个screen会话,你键入Ctrl+a ?来获取命令列表。

当进入后,请键入Ctrl-a c,创建一个shell会话,然后就可以运行命令或者执行常驻后台任务。

如果需要退出当前screen会话时,请键入Ctrl+a d 退出screen。 你执行任务将会一直运行。

screen

screen -S session_name #命名会话
Ctrl+a ?   #获取帮助
Ctrl+a c   #在screen创建shell 会话
Ctrl+a d   #退出screen

screen 快捷键

当您开始新的screen会话时,它将创建一个带有shell的窗口。 screen会话中可以有多个窗口。

要创建shell会话类型的窗口键入Ctrl+a c,将为其分配范围0...9中的第一个可用数字。

以下是一些用于管理screen窗口的最常用命令。 Ctrl+a c创建一个新窗口,包括shell会话。

Ctrl+a "列出所有窗口,Ctrl+a 0切换到窗口0,Ctrl+a A重命名当前窗口

Ctrl+a S将当前窗口水平分为两个窗口,Ctrl+a |将当前窗口垂直分割为两个窗口。

Ctrl+a tab将输入焦点切换到下一个窗口,Ctrl+a Ctrl+a在当前窗口和上一个之间切换。

Ctrl+a Q关闭当前区域以外的所有窗口,Ctrl+a X关闭当前窗口。

您可以随时输入键入Ctrl+a d退出screen会话,从会话断开后,在screen会话中运行的程序将继续运行。

恢复screen会话

要恢复screen会话,请运行命令screen -r。 如果您的计算机上正在运行多个screen会话,则需要在r选项后附加screen会话id。

要找到会话ID,请运行screen -ls命令列出当前正在运行的screen会话。 例如要还原screen的id是10835.pts的会话,请运行命令screen -r 10835

screen -ls
screen -r

screen -r 10835
There are screens on:
    10835.pts-0.myfreax-desktop   (Detached)
    10366.pts-0.myfreax-desktop   (Detached)
2 Sockets in /run/screens/S-myfreax.

自定义screen

启动screen时,如果配置文件存在,它将从/etc/screenrc~/.screenrc中读取其配置参数

我们可以在~/.screenrc文件根据喜好修改默认的screen设置。 以下是带有自定义状态行和一些其他选项的示例配置。

# 关闭欢迎消息
startup_message off


# 关闭声音提示
vbell off


# 设置滚动的buffer
defscrollback 10000


# 自定行的状态
hardstatus alwayslastline
hardstatus string '%{= kG}[ %{G}%H %{g}][%= %{= kw}%?%-Lw%?%{r}(%{W}%n*%f%t%?(%u)%?%{r})%{w}%?%+Lw%?%?%= %{g}][%{B} %m-%d %{W}%c %{g}]'

结论

在本教程中,您学习了如何使用Gnu Screen。 现在,您可以开始使用screen程序,并通过单个会话创建多个窗口,在窗口之间导航。

退出和恢复screen会话,并使用〜/.screenrc文件个性化您的screen终端。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • Linux
    +关注

    关注

    87

    文章

    11204

    浏览量

    208703
  • 计算机
    +关注

    关注

    19

    文章

    7352

    浏览量

    87628
  • 命令
    +关注

    关注

    5

    文章

    675

    浏览量

    21965
  • SSH
    SSH
    +关注

    关注

    0

    文章

    184

    浏览量

    16282
  • Screen
    +关注

    关注

    0

    文章

    12

    浏览量

    6739
收藏 人收藏

    评论

    相关推荐

    Linux命令screen

    在全终端工作模式时,由于只能开一个窗口,例如vim占了窗口,就没法同步做其它事情。screen命令提供了一种虚拟窗口,可以让多个虚拟窗口独立工作,并且可以自由切换。另外,screen创建的虚拟窗口
    发表于 12-05 11:11 6812次阅读

    linux运维命令大全

    , dig4. 软件安装命令apt-get ,yum,cat -n5. 常用表达式!!, !$, {a..b},{a,b,c},{$1-$9},$0,$#,$?,$$,$*6. 日常使用命令Ctrl-R
    发表于 03-15 16:36

    如何在Model::tick() 中从A_Screen切换到B_Screen

    在TouchGFX程序中,有Model、A_Screen、B_Screen。它在 A_Screen 中工作,并且在 Model::tick() 中工作有时间想把画面移到B_Screen
    发表于 01-05 07:38

    JAVA教程之Screen小程序

    JAVA教程之Screen小程序,很好的JAVA的资料,快来下载吧。
    发表于 04-13 10:31 2次下载

    G0024红外技术宝典_Screen

    G0024红外技术宝典_Screen
    发表于 12-25 21:49 0次下载

    Linux的screen命令应该如何使用技巧详细说明

    您是否遇到过在远程计算机上执行长时间运行任务的情况,然后连接突然断开,SSH 会话终止了并且丢失正在进行的工作呢。幸运的是,有一个实用程序叫做 screen 允许我们恢复我们的会话。
    的头像 发表于 01-20 11:35 1540次阅读

    Linux的screen命令如何使用技巧详细说明

    您是否遇到过在远程计算机上执行长时间运行任务的情况,然后连接突然断开,SSH 会话终止了并且丢失正在进行的工作呢。幸运的是,有一个实用程序叫做 screen 允许我们恢复我们的会话。
    的头像 发表于 02-18 16:18 2834次阅读

    AD7843:Touch Screen Digitizer数据Sheet

    AD7843:Touch Screen Digitizer数据Sheet
    发表于 04-23 08:53 9次下载
    AD7843:Touch <b class='flag-5'>Screen</b> Digitizer数据Sheet

    AD7873:Touch Screen Digitizer数据Sheet

    AD7873:Touch Screen Digitizer数据Sheet
    发表于 05-19 08:51 1次下载
    AD7873:Touch <b class='flag-5'>Screen</b> Digitizer数据Sheet

    LINUX操作系统的安装与Linux常用文件命令

    LINUX操作系统的安装与Linux常用文件命令说明。
    发表于 06-02 17:45 3次下载

    Black Screen现代终端模拟器

    ./oschina_soft/black-screen.zip
    发表于 05-26 16:25 0次下载
    Black <b class='flag-5'>Screen</b>现代终端模拟器

    虚拟终端screen用法详解

    有时候我们需要执行一个命令或脚本,需要几小时甚至几天,在这个过程中,如果中途断网或者出现有其他意外情况怎么办,当然也可以把命令或者脚本放到后台运行,不过不保险,无法在屏幕上随时查看,这就要用到虚拟终端screen
    的头像 发表于 01-06 10:00 1430次阅读

    Linux之screen命令

    在全终端工作模式时,由于只能开一个窗口,例如vim占了窗口,就没法同步做其它事情。screen命令提供了一种虚拟窗口,可以让多个虚拟窗口独立工作,并且可以自由切换。另外,screen创建的虚拟窗口
    的头像 发表于 05-05 14:29 976次阅读

    Visual Studio中python使用pip命令安装模块

    Visual Studio中python使用pip命令安装模块
    的头像 发表于 07-27 11:42 1496次阅读
    Visual Studio中python使用pip<b class='flag-5'>命令</b><b class='flag-5'>安装</b>模块

    HarmonyOS开发:【基于命令行(安装库和工具集)】

    使用命令行进行设备开发时,可以通过以下步骤安装编译OpenHarmony需要的库和工具。
    的头像 发表于 04-25 21:03 355次阅读
    HarmonyOS开发:【基于<b class='flag-5'>命令</b>行(<b class='flag-5'>安装</b>库和工具集)】