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. 清除终端
有时候,我们的进程已经“守护”完毕,不需要这个虚拟终端了,也就是需要释放资源,如何操作呢? 比较推荐的方法,是进入对应虚拟终端,然后输入:
就会回到主终端。 你如果对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 -r tool或screen -R tool进入。
|