Linux screen 会话保持

网页客户端会话在跑需要长时间保持运行的命令时经常会背杀掉,即使使用了‘nohup 和 &’的组合也会被杀,因此,在客户端中使用screen软件。

一、安装

安装
yum install screen
检查
rpm -qa|grep screen

二、语法

screen [-AmRvx -ls -wipe][-d <作业名称>][-h <行数>][-r <作业名称>][-s ][-S <作业名称>]

常用参数及说明

-A  将所有的视窗都调整为目前终端机的大小。
-d <作业名称>  将指定的screen作业离线。
-h <行数>  指定视窗的缓冲区行数。
-m  即使目前已在作业中的screen作业,仍强制建立新的screen作业。
-r <作业名称>  恢复离线的screen作业。
-R  先试图恢复离线的作业。若找不到离线的作业,即建立新的screen作业。
-s  指定建立新视窗时,所要执行的shell。
-S <作业名称>  指定screen作业的名称。
-v  显示版本信息。
-x  恢复之前离线的screen作业。
-ls或--list  显示目前所有的screen作业。
-wipe  检查目前所有的screen作业,并删除已经无法使用的screen作业。

三、常用参数

screen -S yourname -> 新建一个叫yourname的session
screen -ls -> 列出当前所有的session
screen -r yourname -> 回到yourname这个session
screen -d yourname -> 远程detach某个session
screen -d -r yourname -> 结束当前session并回到yourname这个session

四、实践

创建并进入名叫data_import的screen session
screen -S data_import
[输入正常的命令后,需要会话保持的情况下]
分离(退出)当前窗口,进入后台运行
screen -d
列出所有当前的 screen 会话
screen -ls
重连接到一个已有的 screen 会话
screen -r data_import
强制分离并重新连接到一个 screen 会话
screen -d -r session_name
杀死一个运行中的 screen 会话(杀死名为 session_name 的 screen 会话)
screen -S session_name -X quit
在一个运行中的 screen 会话中创建新的窗口(在一个已连接的 screen 会话中按下 Ctrl 和 a 键,然后按 c 键,以创建一个新的窗口)
Ctrl+a c
切换到下一个窗口(在一个已连接的 screen 会话中按下 Ctrl 和 a 键,然后按 n 键,以切换到下一个窗口)
Ctrl+a n
切换到上一个窗口(在一个已连接的 screen 会话中按下 Ctrl 和 a 键,然后按 p 键,以切换到上一个窗口)
Ctrl+a p
杀死当前窗口(在一个已连接的 screen 会话中按下 Ctrl 和 a 键,然后按 k 键,以杀死当前窗口)
Ctrl+a k

留下评论

您的邮箱地址不会被公开。 必填项已用 * 标注