当谈到在Linux终端中管理会话时,screen
是一个非常有用的工具。它允许你在单个终端会话中创建多个虚拟终端,从而可以同时运行多个任务,即使在断开与服务器的连接后也可以保持这些会话。
1.安装与启动screen:
通常的话,screen
已经预装在大多数Linux发行版中。如果未安装,你可以使用适用于你的包管理器的命令进行安装。例如,在Debian或Ubuntu上,你可以使用以下命令安装:
sudo apt-get install screen
启动screen
很简单,只需在终端中输入screen
并按Enter键即可启动一个新的会话。
用法还有很多在这里描写基础的经常用到的。
2.基本screen用法:
输入screen并按回车键之后进入新的终端会话。有一些常用的命令:
- Ctrl+A 然后按d健:分离当前的
screen
会话,这样可以暂时离开终端而不中断正在运行的任务。 - screen -S xxx(随便起个名字):开一个以xxx命名的终端会话
- screen -ls (screen -list):查看会话列表,即列出所有正在运行的screen会话。
- screen -r <会话Id>:重新链接服务器时,可以用此命令重新连接到之前分离的会话。
注:<会话id>就是之前分离会话的id,可以通过上面screen -ls获取查看
-
新建窗口:在
screen
会话中,你可以通过按Ctrl + A
,然后按c
键来创建一个新的虚拟终端窗口。 -
切换窗口:使用
Ctrl + A
,然后按n
(下一个窗口)或p
(上一个窗口)来在多个窗口间切换。 -
关闭窗口:在窗口内执行
exit
命令来关闭窗口。
3.高级用法:
-
多窗口滚动:按
Ctrl + A
,然后按Esc
键,即可进入复制模式,然后你可以使用方向键或Vi编辑器风格的快捷键来滚动查看终端输出。 -
窗口命名:你可以为每个
screen
窗口设置自定义名称,这样更容易识别它们。在窗口内,使用Ctrl + A
,然后按A
键来为当前窗口重命名。 -
配置
screen
:screen
可以通过一个配置文件(~/.screenrc
)进行自定义设置,包括定义快捷键、默认窗口、状态栏等等。 - 暂时禁用会话: 有时,你可能想临时暂停
screen
会话,而不是完全分离它。你可以按Ctrl + A
,然后按z
键来暂时禁用screen
会话。要恢复会话,可以使用fg
命令。 - 多用户共享会话:
screen
支持多用户共享会话的功能。这在团队协作或技术支持方面非常有用。一个用户可以启动一个screen
会话,并允许其他用户加入和参与该会话。其他用户可以使用以下命令加入一个已经运行的会话:screen -x <会话Id>
4.screen
命令参数:
screen
命令还支持一些有用的参数,可以根据需求使用:
-
-S <会话名称>
:指定会话名称,用于标识和重连。 -
-dmS <会话名称>
:以后台模式启动一个新会话,无需立即连接。 -
-r <会话名称>
:重连到指定名称的会话。
5. screen
快捷键列表:
以下是一些常用的screen
快捷键列表,它们可以在screen
会话中使用:
-
Ctrl + A, c
:创建新窗口 -
Ctrl + A, n
:切换到下一个窗口 -
Ctrl + A, p
:切换到上一个窗口 -
Ctrl + A, A
:为当前窗口重命名 -
Ctrl + A, d
:分离会话 -
Ctrl + A, k
:关闭当前窗口 -
Ctrl + A, [Enter]
:进入复制/滚动模式 -
Ctrl + A, Esc
:进入复制/滚动模式(Vi编辑器风格) -
Ctrl + A, z
:暂时禁用会话 -
Ctrl + A, S
:水平拆分当前窗口 -
Ctrl + A, |
:垂直 -
Ctrl + A, Tab
:在拆分窗口之间切换
screen
是一种非常强大且灵活的工具,特别适合在终端中进行长时间的任务和多任务管理。