文章目录
- 安装
- 快速入门
- 启动Screen会话
- 创建和管理窗口
- 退出和恢复会话
- 高级功能
- 多用户支持
- 日志记录
- 复制粘贴模式
- 自定义配置
在Linux和类Unix系统的世界里,命令行是用于与系统交互的主要方式之一。然而,当涉及到远程服务器管理、长时间运行的任务或者同时处理多个任务时,标准的命令行终端可能难以达到我们的需求,尤其是长时间在服务器上跑训练模型时。这个时候,Screen
就成为了一个不可或缺的工具。它使得我们可以在Linux系统上在同一终端窗口中运行多个shell会话,还能在断开连接后继续维持这些会话,确保任务不受干扰地完成。本文将介绍Screen
的安装和基本使用方法,并分享一些高级技巧。
安装
大多数现代Linux发行版默认已经预装了Screen
。如果没有,可以通过包管理器轻松安装:
- Debian/Ubuntu用户使用命令
sudo apt-get install screen
安装。 - Red Hat/CentOS/Fedora用户可以使用命令
sudo yum install screen
或sudo dnf install screen
- Arch Linux用户使用命令
sudo pacman -S gnu-scerrn
来安装
快速入门
启动Screen会话
启动一个新的Screen
会话非常简单,只需要输入screen
命令即可,它会默认创建一个新的会话。如果你想为你的会话命名,以便日后更容易识别,可以使用-S
参数,例如screen -S yourname
screen # 创建一个新的screen会话
screen -S yourname # 创建一个名字为“yourname”的会话
创建和管理窗口
一旦你进入了Screen
会话,就可以创建新的窗口来运行不同的程序。按Ctrl+a+c
来创建一个新的窗口。要查看所有的窗口列表,按Ctrl+a+w
;要切换到编号为N
的窗口,就按Ctrl+a+N
(N是窗口号)。按Ctrl+a+n
切换到下一个窗口;按Ctrl+a+p
切换到上一个窗口;按Ctrl+a+k
杀死当前窗口;此外,Ctrl+a
允许你通过一个交互式的菜单选择窗口。
Ctrl+a+c #创建新窗口
Ctrl+a+w #展示当前会话中的所有窗口
Ctrl+a+N #切换至编号为N的窗口
Ctrl+a+n #切换至下一个窗口
Ctrl+a+p #切换至上一个窗口
Ctrl+a+k #杀死当前窗口
退出和恢复会话
有时候需要暂时离开电脑,或者离开当前会话,但是又不能中断正在运行的任务。这时可以暂时退出当前的Screen
会话,只需按Ctrl+a+d
。当需要再次进入该对话时,通过screen -r name
来恢复会话。如果有多个可恢复的会话,使用screen -list
查看当前所有会话,并使用screen -r name
或screen -r <session-id>
来恢复指定会话。
ctrl+a+d # 暂时退出当前会话
screen -r name # 恢复名字为“name”的会话
screen -r session_id # 恢复id为session_id的会话
screen -list # 查看当前所有的screen会话
高级功能
多用户支持
Screen
支持多用户会话,允许多个用户共享同一个Screen
会话。这在团队协作环境中特别有用,你可以设置访问权限,甚至让其他用户只读访问。
日志记录
如果你希望记录下所有的命令历史或输出内容,Screen
提供了日志记录功能。只需要再.screenrc
文件中添加一行logfile /path/to/logfile
即可启用此功能。
复制粘贴模式
Screen
内置了复制粘贴模式,使得在终端内复制文本变得容易。进入复制模式的方法是按Ctrl+a+[
,然后移动光标选择文本,按回车键即完成复制。粘贴命令是Ctrl+a+]
。
自定义配置
为了使Screen
更加个性化和高效,你可以编辑位于用户主目录下的.screenrc
文件。在这里,你可以设定启动时自动打开的窗口数量、自定义快捷键改变颜色主题等。