screen 命令
基本介绍
screen 命令用于创建和管理多个终端会话,允许用户在单个终端窗口中运行多个命令,并且可以在会话之间切换,即使断开连接后也能保持进程运行。
资料合集:https://pan.quark.cn/s/6fe3007c3e95、https://pan.quark.cn/s/561de99256a5、https://pan.quark.cn/s/985f55b13d94、https://pan.quark.cn/s/d0fb20abd19a
语法
screen [选项] [命令]
常用选项
-S:创建一个指定名称的会话-r:重新连接到一个已存在的会话-d:分离一个会话-ls:列出所有会话-x:连接到一个正在运行的会话-D:强制分离一个会话-h:设置滚动缓冲区大小
使用示例
1. 创建一个新的会话
bash
screen
2. 创建一个指定名称的会话
bash
screen -S mysession
3. 列出所有会话
bash
screen -ls
4. 重新连接到一个会话
bash
screen -r session_id
5. 分离当前会话(快捷键)
bash
Ctrl+a d
6. 连接到一个正在运行的会话
bash
screen -x session_id
7. 在会话中创建新窗口(快捷键)
bash
Ctrl+a c
8. 在窗口之间切换(快捷键)
bash
Ctrl+a 数字键
9. 查看窗口列表(快捷键)
bash
Ctrl+a "
10. 关闭当前窗口(快捷键)
bash
Ctrl+a k
常用快捷键
Ctrl+a c:创建新窗口Ctrl+a d:分离会话Ctrl+a k:关闭当前窗口Ctrl+a ":查看窗口列表Ctrl+a 数字:切换到指定窗口Ctrl+a n:切换到下一个窗口Ctrl+a p:切换到上一个窗口Ctrl+a Ctrl+a:切换到之前的窗口Ctrl+a ?:显示帮助信息
会话管理
创建会话
bash
screen -S session_name
分离会话
bash
Ctrl+a d # 快捷键
# 或
screen -d session_id
重新连接会话
bash
screen -r session_id
强制分离并重新连接
bash
screen -D -r session_id
终止会话
bash
# 在会话中执行
exit
# 或
screen -X -S session_id quit
相关命令
tmux:功能类似的终端复用工具nohup:使命令在后台运行,断开连接后继续执行disown:使进程与终端分离bg:将前台作业移至后台
注意事项
screen会话在断开连接后会继续运行,适合长时间运行的任务- 可以通过
~/.screenrc文件自定义 screen 的配置 - 在会话中运行的进程会随着会话的终止而终止
- 可以使用
screen -X向会话发送命令
总结
screen 命令是 Linux 系统中强大的终端复用工具,它允许用户在单个终端窗口中管理多个会话,并且可以在断开连接后保持进程运行。通过使用 screen,用户可以更有效地管理远程服务器上的长时间运行任务,提高工作效率。