1.简介
screen 是一个非常有用的命令行工具,它可以让你创建多个独立的 shell 会话(称为 “窗口”)并在它们之间切换,即使你的网络连接中断,这些会话也会保持运行状态。
2.命令
- screen:启动一个新的 screen 会话。
- screen -S <session_name>:启动一个新的带有特定名称的 screen 会话。
- screen -ls:列出所有的 screen 会话。
- screen -r:恢复一个被分离的 screen 会话。如果有多个会话,你需要指定要恢复的会话的名称或 ID。
- screen -r <session_name>:恢复一个特定的 screen 会话。
- screen -d <session_name>:分离一个特定的 screen 会话。
3.在一个 screen 会话中,使用以下命令:
- Ctrl-a d:分离当前的 screen 会话。
- Ctrl-a c:在当前的 screen 会话中创建一个新的窗口。
- Ctrl-a n 和 Ctrl-a p:切换到下一个或上一个 screen 窗口。
- Ctrl-a k:关闭当前的 screen 窗口。
4.案例:django项目
4.1步骤:
- 创建一个新的 screen 会话:
screen -S django
自己决定 screen 命令后 -S 参数的名称。 - 在新的 screen 会话中启动服务器
python manage.py runserver 0.0.0.0:8000 - 可以按 Ctrl+A + D 来离开 screen 会话并返回到你的普通终端。服务器会继续在后台运行。
- 想返回到服务器的终端会话时
screen -r django - 如果Ctrl-a k不起作用,可以按如下步骤
(1)使用 Ctrl-a d 分离当前的 screen 会话
(2)在终端中运行 screen -ls 列出所有的 screen 会话。找到你想要关闭的会话的 ID 或名称。
(3)使用 screen -X -S [session_id] quit 命令来关闭特定的 screen 会话。请替换 [session_id] 为你在第2步中找到的会话 ID 或名称。
注意,执行 screen -X -S [session_id] quit 命令会关闭整个 screen 会话,包括会话中的所有窗口和运行在这些窗口中的所有程序。请确保这是你想要的操作。