找回密码
立即注册
搜索
发新帖

587

积分

0

好友

86

主题
发表于 2024-10-24 11:26:32 | 查看: 154| 回复: 0
29209af6dacec5783cad7c08d8ca0c76.png

1.状态介绍
通常情况下,screen创建的虚拟终端,有两个工作模式:
  • Attached:表示当前screen正在作为主终端使用,为活跃状态。
  • Detached:表示当前screen正在后台使用,为非激发状态。
2. 终端列表
screen -ls
3. 新建终端
# 创建一个叫Hello的虚拟终端
screen -S Hello

按Ctril+a,再按d,即可保持这个screen到后台并回到主终端


三种创建方法比较:
  • 使用-R创建,如果之前有创建唯一一个同名的screen,则直接进入之前创建的screen
  • 使用-S创建和直接输入screen创建的虚拟终端,不会检录之前创建的screen(也就是会创建同名的screen)
4. 回到终端使用-R或者-r命令即可:
# 使用screen -r命令
screen -r [pid/name]


另外-R和-r一样,但是没有对应名称的PID或者Name时,会自动创建新的虚拟终端。
5. 清除终端
有时候,我们的进程已经“守护”完毕,不需要这个虚拟终端了,也就是需要释放资源,如何操作呢?
比较推荐的方法,是进入对应虚拟终端,然后输入:
# 退出终端
exit

就会回到主终端。
你如果对screen运行程序,确定已经停止运行了,也可以在主终端内,使用命令释放:
# 使用-R/-r/-S均可
screen -R [pid/Name] -X quit

高阶命令
screen也有一些高级命令。
绑定键
在虚拟终端内,输入Ctril+a将等待接受预先设置的绑定键,这个时候可以输入对应的一些命令,来操作虚拟终端,如:
  • d:保存会话,后台运行改虚拟终端
  • k:关闭对话,等同输入:exit
  • c:新建一个虚拟终端
  • ?:显示所有绑定键盘

无法进入Attached状态虚拟终端
上文提到,screen有两种状态,Attached状态,其实代表此虚拟终端,用户正在使用,这个时候,是无法进入的。但是,有时候,我们创建虚拟终端,并没有使用Ctril+a再按d退出并挂起虚拟终端,反而因为长时间没操作,或者本地网络掉包等问题,非正常退出虚拟终端,导致出现SSH连接服务器,并没有在虚拟终端内,却出现Attached状态:
使用screen -r tool无法进入:
而使用screen -R tool更会“奇迹般”创建新的虚拟终端。
只需要:
screen -d tool

之后,即可使用screen -r tool或screen -R tool进入。

您需要登录后才可以回帖 登录 | 立即注册

QQ群:193157782|Blog|AzerothCore|AC zhCN Linktrees ( 苏ICP备2023024864号-2 )

GMT+8, 2024-12-31 01:34 , Processed in 0.052559 second(s), 22 queries .

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表