Ubuntu云服务器Screen安装与使用完全指南
简介
Screen是一款功能强大的终端复用工具,允许您在一个窗口内使用多个终端会话。该程序在一个shell会话中运行,并作为其他终端会话的容器和管理工具,其工作方式类似于窗口管理器管理窗口的方式。
在许多情况下,创建多个终端窗口可能不可行或不理想。例如,您可能需要在没有图形界面(X服务器)的情况下管理多个控制台会话,您可能需要同时访问多个远程云服务器,或者您可能需要在处理其他任务时持续监视某个运行程序的输出。
虽然有一些现代化的解决方案可以解决这个问题,例如tmux,但Screen是其中最成熟的工具之一,并且拥有自己强大的语法和功能集。
步骤1 – 安装Screen
在本教程中,我们将使用Ubuntu 22.04系统进行演示,但除了安装过程外,这些步骤在其他现代Linux发行版上应该基本相同。
Screen通常在Ubuntu系统上默认安装。您也可以使用apt包管理器来更新软件源并安装Screen:
- sudo apt update
- sudo apt install screen
通过运行 which screen
命令来验证Screen是否已成功安装:
- which screen
/usr/bin/screen
如果看到上述输出,表示Screen已成功安装。在下一步中,你可以开始使用Screen。
第二步 – 使用Screen
要启动一个新的Screen会话,只需在终端中运行screen
命令:
- screen
GNU Screen 版本 4.09.00 (GNU) 2022年1月30日
版权所有 (c) 2018-2020 Alexander Naumov, Amadeusz Slawinski
版权所有 (c) 2015-2017 Juergen Weigert, Alexander Naumov, Amadeusz Slawinski
版权所有 (c) 2010-2014 Juergen Weigert, Sadrul Habib Chowdhury
版权所有 (c) 2008-2009 Juergen Weigert, Michael Schroeder, Micah Cowan, Sadrul Habib Chowdhury
版权所有 (c) 1993-2007 Juergen Weigert, Michael Schroeder
版权所有 (c) 1987 Oliver Laumann
本程序是自由软件;您可以根据自由软件基金会发布的GNU通用公共许可证条款重新分发和/或修改它;
可以选择使用版本2,或(根据您的选择)任何更高版本。
…
[按空格键查看下一页;按回车键结束。]
启动Screen程序后,首先会显示许可信息页面。只需按Enter键即可继续。
接下来发生的事情可能会让初学者感到困惑:您会看到一个普通的命令提示符,看起来似乎什么都没有发生。您可能会怀疑Screen是否正常运行。让我们通过一个快捷键来验证。按下Ctrl+a组合键,然后按v键。
screen 4.09.00 (GNU) 30-Jan-22
我们刚才向Screen请求了版本信息,并收到了反馈,这证实了Screen确实在正常运行。
现在正是介绍如何控制Screen的好时机。Screen主要通过键盘快捷键进行控制。每个Screen的键盘快捷键都以Ctrl+a(先按住Ctrl键,然后按下”a”键)作为前缀。这个按键组合的作用是告诉Screen注意我们接下来按下的键。
您在请求Screen版本信息时已经使用了这个模式。让我们继续使用它来获取更多有用的信息,输入Ctrl+a后跟?键:
Screen 键绑定,第1页,共2页。命令键:^A 字面量 ^A:a break ^B b license , removebuf = clear C lockscreen ^X x reset Z colon : log H screen ^C c copy ^[ [ login L select ' detach ^D d meta a silence _ digraph ^V monitor M split S displays * next ^@ ^N sp n suspend ^Z z dumptermcap . number N time ^T t fit F only Q title A flow ^F f other ^A vbell ^G focus ^I pow_break B version v hardcopy h pow_detach D width W help ? prev ^H ^P p ^? windows ^W w history { } quit \ wrap ^R r info i readbuf < writebuf > kill K k redisplay ^L l xoff ^S s lastmsg ^M m remove X xon ^Q q [按空格键查看下一页;按回车键结束。]
这是Screen的内部键盘快捷键参考页面。建议您记住如何访问这个页面,因为它是一个非常实用的快速参考工具。正如页面底部所示,您可以按空格键查看更多命令。
现在,让我们尝试一些更有实际意义的操作。在当前窗口中运行一个名为top
的程序,它将显示系统进程的实时信息:
- top
[top程序的输出将显示在这里]
top – 16:08:07 up 1:44, 1 user, load average: 0.00, 0.01, 0.05 Tasks: 58 total, 1 running, 57 sleeping, 0 stopped, 0 zombie Cpu(s): 0.0%us, 0.0%sy, 0.0%ni,100.0%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st Mem: 507620k total, 262920k used, 244700k free, 8720k buffers Swap: 0k total, 0k used, 0k free, 224584k cached PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 1 root 20 0 3384 1836 1288 S 0.0 0.4 0:00.70 init 2 root 20 0 0 0 0 S 0.0 0.0 0:00.00 kthreadd 3 root 20 0 0 0 0 S 0.0 0.0 0:00.11 ksoftirqd/0 5 root 20 0 0 0 0 S 0.0 0.0 0:00.12 kworker/u:0 6 root RT 0 0 0 0 S 0.0 0.0 0:00.00 migration/0 7 root RT 0 0 0 0 S 0.0 0.0 0:00.07 watchdog/0 8 root 0 -20 0 0 0 S 0.0 0.0 0:00.00 cpuset 9 root 0 -20 0 0 0 S 0.0 0.0 0:00.00 khelper 10 root 20 0 0 0 0 S 0.0 0.0 0:00.00 kdevtmpfs 11 root 0 -20 0 0 0 S 0.0 0.0 0:00.00 netns 12 root 20 0 0 0 0 S 0.0 0.0 0:00.03 sync_supers 13 root 20 0 0 0 0 S 0.0 0.0 0:00.00 bdi-default 14 root 0 -20 0 0 0 S 0.0 0.0 0:00.00 kintegrityd 15 root 0 -20 0 0 0 S 0.0 0.0 0:00.00 kblockd 16 root 0 -20 0 0 0 S 0.0 0.0 0:00.00 ata_sff 17 root 20 0 0 0 0 S 0.0 0.0 0:00.00 khubd 18 root 0 -20 0 0 0 S 0.0 0.0 0:00.00 md
好的,我们现在正在监控我们的VPS上的进程。但是如果我们需要运行一些命令来了解更多关于我们看到的程序的信息怎么办?我们不需要退出“top”。我们可以创建一个新窗口来运行这些命令。
按下 Ctrl-a c 的组合键可以为我们创建一个新的窗口。现在,我们可以随意运行任何命令,而不会中断我们在另一个窗口中的监控工作。
那个其他窗口去哪了?我们可以使用Ctrl-a n返回到它。
这个序列进入下一个正在运行的窗口。窗口列表会循环,所以当没有当前窗口之外的窗口时,它会将我们切换回第一个窗口。
按下Ctrl-a p可以改變當前窗口的方向。假設你有三個窗口,並且目前在第三個窗口,這個命令將會將你切換到第二個窗口。
在您来回切换相同两个窗口时,一个有用的快捷方式是 Ctrl-a Ctrl-a。
这个序列会将你导航到最近浏览的窗口。所以在之前的例子中,它会将你带回第三个窗口。
此时,你可能想知道如何跟踪我们创建的所有窗口。幸运的是,屏幕提供了多种不同的管理不同会话的方法。首先,我们将创建三个新窗口,总共四个窗口,然后尝试使用Ctrl-a w,这是屏幕的一个窗口管理工具。输入Ctrl-a c Ctrl-a c Ctrl-a c Ctrl-a w。
0$ bash 1$ bash 2-$ bash 3*$ bash
我们从这个命令中获得了一些有用的信息:我们当前的窗口列表。在这里,我们有四个窗口。每个窗口都有一个数字,窗口的编号从“0”开始。当前的窗口在数字旁边有一个星号。
所以你可以看到我们现在是在第三个窗口(实际上第四个,因为第一个窗口是0)。你可以用 Ctrl-a 1 快速回到第一个窗口。
我们可以使用索引号直接跳转到我们想要的窗口。让我们再次使用Ctrl-a w来查看我们的窗口列表。
0$ bash 1*$ bash 2$ bash 3-$ bash
正如你所见,星号告诉我们现在是在窗口#1上。让我们尝试一种不同的切换窗口的方式,使用Ctrl-a:“:”
Num Name Flags 0 bash $ 1 bash $ 2 bash $ 3 bash $
这次我们得到了一个实际的导航菜单。您可以使用上下箭头进行导航。按下回车键切换到一个窗口。
这个相当有用,但是现在我们所有的窗口都被命名为“bash”。这并不是很有帮助。让我们给一些窗口命名吧。切换到你想要命名的窗口,例如使用Ctrl-a 0,然后使用Ctrl-a A:
Set window’s title to: bash
使用Ctrl-a A序列,我们可以给会话命名。您现在可以使用退格键删除“bash”,然后将其重命名为您想要的名称。我们要在窗口#0再次运行top,因此我们将将其命名为monitoring。
使用 Ctrl-a “:” 验证结果。
Num Name Flags 0 monitoring $ 1 bash $ 2 bash $ 3 bash $
现在对于窗口0,我们有一个更有帮助的标签。所以我们知道如何创建和命名窗口,但是当我们不再需要它们时,我们如何摆脱它们呢?我们使用Ctrl-a k序列,代表”kill”。
Really kill this window [y/n]
步骤三 – 管理屏幕会话。当您想要退出屏幕并关闭所有窗口时,您可以使用Ctrl-a \。
Output
Really quit and kill all your windows [y/n]
这将会破坏我们的屏幕会话。我们将丢失已创建的窗口和未完成的工作。
但是我们想要探索使用“screen”的巨大好处之一。我们不想销毁会话,我们想要分离它。分离允许我们在“screen”实例中运行程序,同时恢复对基础控制台会话的访问(最初启动“screen”时的会话)。屏幕会话仍然存在,只是在后台进行管理。使用Ctrl-a d进行分离。
Output
[detached from 1835.pts-0.Blank]
那么我们的会话现在已经断开了。我们怎样重新加入呢? de le. ne?)
- screen –r
-r标志代表重新连接。我们现在又回到了屏幕会话中。但是,如果我们有多个屏幕会话怎么办?如果我们开始了一个屏幕会话并将其分离,然后又开始了一个新的屏幕会话并将其分离,会发生什么呢?
尝试运行screen,然后使用Ctrl-a d进行分离,然后再次运行screen,然后再次使用Ctrl-a d进行分离。
我们该如何告诉屏幕要连接哪个会话?
- screen –ls
Output
There are screens on: 2171.pts-0.Blank (07/01/2013 05:00:39 PM) (Detached) 1835.pts-0.Blank (07/01/2013 03:50:43 PM) (Detached) 2 Sockets in /var/run/screen/S-justin.
现在我们有一个会话列表。我们可以通过在-r标志后输入其ID号码来重新连接第二个会话。
- screen –r 1835
如果你想在两台独立的电脑或终端窗口上连接会话的话,你可以使用-x标志,这样可以共享会话。
- screen –x
第四步 – 在屏幕中管理终端设备有许多命令可以帮助您管理在屏幕内运行的终端会话。
要复制文本,你可以使用Ctrl+a进行选择。
这将给你一个可以使用箭头键或者HJKL来移动的光标。移动到你想要开始复制的位置,然后按下Enter键。移动到你想要复制结束的位置,再次按下Enter键。文本将被复制到你的剪贴板上。
需要注意的一件事是,这也是屏幕滚动的机制。如果你需要查看屏幕之外的一些文字,可以按下Ctrl-a [,然后向上滚动屏幕。
我们可以使用Ctrl-a]粘贴我们复制的文本。
你可能还想要做的另一件事是监视正在另一个屏幕窗口中执行的程序。
假设你在一个窗口中正在编译一些东西,而你想知道它何时完成。你可以使用Ctrl-a _让screen监测该窗口是否静止,当输出没有产生30秒时会告诉你。
让我们用另一个例子来试试。让屏幕在我们的窗口完成4次向谷歌发出ping的时候告诉我们。
- ping –c 4 www.google.com
然后按下Ctrl-a键 _:
Output
The window is now being monitored for 30 sec. Silence.
现在我们可以在另一个窗口中工作,并且通过输入Ctrl-a 1来在这个窗口完成任务时收到提醒。
Output
Window 2: silence for 30 seconds
我们也可以做相反的操作,当特定窗口有活动时会收到提醒。
- sleep 20 && echo “output”
接著,按下Ctrl-a M。
Output
Window 2 (bash) is now being monitored for all activity.
现在,当命令产生输出时,我们将会收到提醒。要查看结果,请使用Ctrl-a 1。
Output
Activity in window 2
假设我们要进行一些重要的更改,并且希望记录我们运行的所有命令。我们可以使用Ctrl-a H来记录会话。
Output
Creating logfile “screenlog.1”.
屏幕区域如果我们需要同时看到多个窗口,可以使用屏幕所称的“区域”。我们通过分割当前区域来创建更多的区域。要水平分割当前区域,可以使用Ctrl-a S。
这将使当前窗口移动到屏幕的上半部,并在下方打开一个新的空白区域。我们可以使用 Ctrl-a [tab] 切换到下方的屏幕。
我们可以选择在底部区域创建一个新窗口,或者以通常的方式切换到不同的窗口。
如果我们想要关闭当前的区域,可以使用Ctrl-a X。
这样可以在不破坏实际窗口的情况下毁掉该区域。也就是说,如果你在该区域运行一个程序,你仍然可以像正常窗口一样访问它,只是对该窗口的视图被破坏了。
如果我们想要进行垂直分割,可以使用Ctrl-a |。
垂直分割的控制方式与水平分割相同。如果我们添加了一些不同的区域,并希望回到单区域状态,我们可以使用 Ctrl-a Q,它会销毁除当前区域外的所有区域。
步骤5 – 使用Byobu与Screen
这是文章《如何在Ubuntu云服务器上安装和使用Screen》的第4部分(共4部分)。
一个对Screen的很大增强是一个被称为Byobu的程序。它充当Screen的包装器,提供了增强的用户体验。在Ubuntu上,你可以用以下命令进行安装:
$ sudo apt install byobu
在我们开始之前,我们需要告诉Byobu使用Screen作为后端。我们可以通过以下命令完成:
$ byobu-select-backend
输出:
Select the byobu backend:
1. tmux
2. screen
Choose 1-2 [1]:
我们可以在这里选择Screen来将其设置为默认的终端管理器。
现在,你可以输入”byobu”来启动会话,而不是输入”screen”。
$ byobu
当您首次按下Ctrl-a时,您需要告诉Byobu将其识别为Screen命令。
输出:
Configure Byobu's ctrl-a behavior...
When you press ctrl-a in Byobu, do you want it to operate in:
(1) Screen mode (GNU Screen's default escape sequence)
(2) Emacs mode (go to beginning of line)
Note that:
- F12 also operates as an escape in Byobu
- You can press F9 and choose your escape character
- You can run 'byobu-ctrl-a' at any time to change your selection
Select [1 or 2]:
选择1以正常方式使用Byobu。
界面提供了许多有用的信息,例如窗口列表和系统信息。在Ubuntu上,它甚至告诉你有多少个需要安全更新的软件包,以一个数字加上一个红色背景上的感叹号显示。
使用Byobu和Screen之间的一个不同之处是Byobu实际上管理会话的方式。如果你在分离后再次运行Byobu,它会重新连接到你之前的会话,而不是创建一个新的会话。
要创建一个新会话,使用 byobu –S。
$ byobu –S 会话名称
将”会话名称”更改为您想为新会话命名的任何内容。您可以通过下列命令查看当前会话列表:
$ byobu –ls
输出:
There are screens on:
22961.new (07/01/2013 06:42:52 PM) (Detached)
22281.byobu (07/01/2013 06:37:18 PM) (Detached)
2 Sockets in /var/run/screen/S-root.
如果有多个会话时,当你运行byobu时,会出现一个菜单让你选择想要连接的会话。
$ byobu
输出:
Byobu sessions...
1. screen: 22961.new (07/01/2013 06:42:52 PM) (Detached)
2. screen: 22281.byobu (07/01/2013 06:37:18 PM) (Detached)
3. Create a new Byobu session (screen)
4. Run a shell without Byobu (/bin/bash)
Choose 1-4 [1]:
你可以选择任何当前会话,创建一个新的Byobu会话,甚至可以不使用Byobu获取一个新的shell。
一个有用的选项是在你远程管理的云服务器上设置Byobu自动启动,这样当你登录会话时它会自动启动。这意味着如果你突然断开会话,你的工作不会丢失,而且你可以重新连接回到之前的状态。
为了让Byobu在每次登录时自动启动,在终端输入以下命令:
$ byobu-enable
输出:
The Byobu window manager will be launched automatically at each text login.
To disable this behavior later, just run: byobu-disable
Press to continue…
如所述,如果您想要再次关闭此功能,请输入:
$ byobu-disable
它将不再自动启动。
结论
在这个教程中,您安装并使用了Screen和Byobu来管理终端会话。您学习了几种不同的快捷方式来在多个运行环境之间实现快速分离和切换。和许多成熟的Unix终端界面一样,Screen可能有些特殊,但它也非常强大和普遍 – 您永远不知道何时会派上用场。
Really quit and kill all your windows [y/n]
这将会破坏我们的屏幕会话。我们将丢失已创建的窗口和未完成的工作。
但是我们想要探索使用“screen”的巨大好处之一。我们不想销毁会话,我们想要分离它。分离允许我们在“screen”实例中运行程序,同时恢复对基础控制台会话的访问(最初启动“screen”时的会话)。屏幕会话仍然存在,只是在后台进行管理。使用Ctrl-a d进行分离。
[detached from 1835.pts-0.Blank]
那么我们的会话现在已经断开了。我们怎样重新加入呢? de le. ne?)
- screen –r
-r标志代表重新连接。我们现在又回到了屏幕会话中。但是,如果我们有多个屏幕会话怎么办?如果我们开始了一个屏幕会话并将其分离,然后又开始了一个新的屏幕会话并将其分离,会发生什么呢?
尝试运行screen,然后使用Ctrl-a d进行分离,然后再次运行screen,然后再次使用Ctrl-a d进行分离。
我们该如何告诉屏幕要连接哪个会话?
- screen –ls
There are screens on: 2171.pts-0.Blank (07/01/2013 05:00:39 PM) (Detached) 1835.pts-0.Blank (07/01/2013 03:50:43 PM) (Detached) 2 Sockets in /var/run/screen/S-justin.
现在我们有一个会话列表。我们可以通过在-r标志后输入其ID号码来重新连接第二个会话。
- screen –r 1835
如果你想在两台独立的电脑或终端窗口上连接会话的话,你可以使用-x标志,这样可以共享会话。
- screen –x
第四步 – 在屏幕中管理终端设备有许多命令可以帮助您管理在屏幕内运行的终端会话。
要复制文本,你可以使用Ctrl+a进行选择。
这将给你一个可以使用箭头键或者HJKL来移动的光标。移动到你想要开始复制的位置,然后按下Enter键。移动到你想要复制结束的位置,再次按下Enter键。文本将被复制到你的剪贴板上。
需要注意的一件事是,这也是屏幕滚动的机制。如果你需要查看屏幕之外的一些文字,可以按下Ctrl-a [,然后向上滚动屏幕。
我们可以使用Ctrl-a]粘贴我们复制的文本。
你可能还想要做的另一件事是监视正在另一个屏幕窗口中执行的程序。
假设你在一个窗口中正在编译一些东西,而你想知道它何时完成。你可以使用Ctrl-a _让screen监测该窗口是否静止,当输出没有产生30秒时会告诉你。
让我们用另一个例子来试试。让屏幕在我们的窗口完成4次向谷歌发出ping的时候告诉我们。
- ping –c 4 www.google.com
然后按下Ctrl-a键 _:
The window is now being monitored for 30 sec. Silence.
现在我们可以在另一个窗口中工作,并且通过输入Ctrl-a 1来在这个窗口完成任务时收到提醒。
Window 2: silence for 30 seconds
我们也可以做相反的操作,当特定窗口有活动时会收到提醒。
- sleep 20 && echo “output”
接著,按下Ctrl-a M。
Window 2 (bash) is now being monitored for all activity.
现在,当命令产生输出时,我们将会收到提醒。要查看结果,请使用Ctrl-a 1。
Activity in window 2
假设我们要进行一些重要的更改,并且希望记录我们运行的所有命令。我们可以使用Ctrl-a H来记录会话。
Creating logfile “screenlog.1”.
屏幕区域如果我们需要同时看到多个窗口,可以使用屏幕所称的“区域”。我们通过分割当前区域来创建更多的区域。要水平分割当前区域,可以使用Ctrl-a S。
这将使当前窗口移动到屏幕的上半部,并在下方打开一个新的空白区域。我们可以使用 Ctrl-a [tab] 切换到下方的屏幕。
我们可以选择在底部区域创建一个新窗口,或者以通常的方式切换到不同的窗口。
如果我们想要关闭当前的区域,可以使用Ctrl-a X。
这样可以在不破坏实际窗口的情况下毁掉该区域。也就是说,如果你在该区域运行一个程序,你仍然可以像正常窗口一样访问它,只是对该窗口的视图被破坏了。
如果我们想要进行垂直分割,可以使用Ctrl-a |。
垂直分割的控制方式与水平分割相同。如果我们添加了一些不同的区域,并希望回到单区域状态,我们可以使用 Ctrl-a Q,它会销毁除当前区域外的所有区域。
步骤5 – 使用Byobu与Screen
这是文章《如何在Ubuntu云服务器上安装和使用Screen》的第4部分(共4部分)。
一个对Screen的很大增强是一个被称为Byobu的程序。它充当Screen的包装器,提供了增强的用户体验。在Ubuntu上,你可以用以下命令进行安装:
$ sudo apt install byobu
在我们开始之前,我们需要告诉Byobu使用Screen作为后端。我们可以通过以下命令完成:
$ byobu-select-backend
输出:
Select the byobu backend:
1. tmux
2. screen
Choose 1-2 [1]:
我们可以在这里选择Screen来将其设置为默认的终端管理器。
现在,你可以输入”byobu”来启动会话,而不是输入”screen”。
$ byobu
当您首次按下Ctrl-a时,您需要告诉Byobu将其识别为Screen命令。
输出:
Configure Byobu's ctrl-a behavior...
When you press ctrl-a in Byobu, do you want it to operate in:
(1) Screen mode (GNU Screen's default escape sequence)
(2) Emacs mode (go to beginning of line)
Note that:
- F12 also operates as an escape in Byobu
- You can press F9 and choose your escape character
- You can run 'byobu-ctrl-a' at any time to change your selection
Select [1 or 2]:
选择1以正常方式使用Byobu。
界面提供了许多有用的信息,例如窗口列表和系统信息。在Ubuntu上,它甚至告诉你有多少个需要安全更新的软件包,以一个数字加上一个红色背景上的感叹号显示。
使用Byobu和Screen之间的一个不同之处是Byobu实际上管理会话的方式。如果你在分离后再次运行Byobu,它会重新连接到你之前的会话,而不是创建一个新的会话。
要创建一个新会话,使用 byobu –S。
$ byobu –S 会话名称
将”会话名称”更改为您想为新会话命名的任何内容。您可以通过下列命令查看当前会话列表:
$ byobu –ls
输出:
There are screens on:
22961.new (07/01/2013 06:42:52 PM) (Detached)
22281.byobu (07/01/2013 06:37:18 PM) (Detached)
2 Sockets in /var/run/screen/S-root.
如果有多个会话时,当你运行byobu时,会出现一个菜单让你选择想要连接的会话。
$ byobu
输出:
Byobu sessions...
1. screen: 22961.new (07/01/2013 06:42:52 PM) (Detached)
2. screen: 22281.byobu (07/01/2013 06:37:18 PM) (Detached)
3. Create a new Byobu session (screen)
4. Run a shell without Byobu (/bin/bash)
Choose 1-4 [1]:
你可以选择任何当前会话,创建一个新的Byobu会话,甚至可以不使用Byobu获取一个新的shell。
一个有用的选项是在你远程管理的云服务器上设置Byobu自动启动,这样当你登录会话时它会自动启动。这意味着如果你突然断开会话,你的工作不会丢失,而且你可以重新连接回到之前的状态。
为了让Byobu在每次登录时自动启动,在终端输入以下命令:
$ byobu-enable
输出:
The Byobu window manager will be launched automatically at each text login.
To disable this behavior later, just run: byobu-disable
Press to continue…
如所述,如果您想要再次关闭此功能,请输入:
$ byobu-disable
它将不再自动启动。
结论
在这个教程中,您安装并使用了Screen和Byobu来管理终端会话。您学习了几种不同的快捷方式来在多个运行环境之间实现快速分离和切换。和许多成熟的Unix终端界面一样,Screen可能有些特殊,但它也非常强大和普遍 – 您永远不知道何时会派上用场。