`screen` 是一个功能强大的命令行工具,主要用于 Unix 和类 Unix 操作系统中,它允许用户开启多个独立的会话(称为"窗口"),在这些会话之间可以自由切换而不会中断已经运行的程序。以下是 `screen` 的一些主要功能和使用方法: ### 主要功能: 1. **多会话管理**:可以同时运行多个独立的 shell 会话。 2. **会话分离与重连**:可以从一个会话中分离出来,稍后再重新连接到该会话。 3. **窗口分割**:在一个 screen 会话中,可以水平或垂直分割窗口,以同时查看和操作多个任务。 4. **滚动记录**:可以查看会话的滚动记录,即使之前的输出已经滚出屏幕。 5. **复制和粘贴**:在 screen 会话中,可以使用快捷键复制文本并粘贴到其他位置。 6. **会话锁定**:可以锁定当前会话,防止他人查看或操作。 7. **自动保存会话**:在网络断开或其他异常情况下,screen 可以自动保存当前会话状态。 ### 基本使用方法: 1. **启动一个新的 screen 会话**: ```bash screen ``` 2. **列出当前的 screen 会话**: ```bash screen -ls ``` 3. **重新连接到一个已存在的会话**: ```bash screen -r [会话ID或名称] ``` 4. **分离当前会话**: 在 screen 会话中按 `Ctrl-a` 然后按 `d`。 5. **在会话中创建新窗口**: 在 screen 会话中按 `Ctrl-a` 然后按 `c`。 6. **在窗口之间切换**: 在 screen 会话中按 `Ctrl-a` 然后按 `n`(下一个窗口)或 `Ctrl-a` 然后按 `p`(上一个窗口)。 7. **分割窗口**: - 水平分割:在 screen 会话中按 `Ctrl-a` 然后按 `"`(双引号键)。 - 垂直分割:在 screen 会话中按 `Ctrl-a` 然后按 `S`。 8. **调整分割窗口的大小**: - 增加/减少水平大小:在 screen 会话中按 `Ctrl-a` 然后按方向键。 - 增加/减少垂直大小:在 screen 会话中按 `Ctrl-a` 然后按 `Shift` 加上方向键。 9. **退出 screen 会话**: - 关闭当前窗口:在 screen 会话中按 `Ctrl-a` 然后按 `k`。 - 退出所有窗口并结束会话:在 screen 会话中按 `Ctrl-a` 然后按 `\`。 10. **锁定当前会话**: 在 screen 会话中按 `Ctrl-a` 然后按 `x`。