screen介绍及使用screen启动一个常驻进程

简介python

screen是一款由GNU计划开发的用于命令行终端切换的自由软件。用户能够经过该软件同时链接多个本地或远程的命令行会话,并在其间自由切换。GNU Screen能够看做是窗口管理器的命令行界面版本。它提供了统一的管理多个会话的界面和相应的功能。
 
只要screen自己没有终止,在其内部运行的会话均可以恢复。这一点对于远程登陆的用户特别有用——即便网络链接中断,用户也不会失去对已经打开的命令 行会话的控制。只要再次登陆到主机上执行screen  -r就能够恢复会话的运行。一样在暂时离开的时候,也能够执行分离命令detach,在保证里面的程序正常运行的状况下让Screen挂起(切换到后台)。
 
在screen环境下,全部的会话都独立的运行,并拥有各自的编号、输入、输出和窗口缓存。用户能够经过快捷键在不一样的窗口下切换,并能够自由的重定向各个窗口的输入和输出。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
 
使用场景
有时候须要执行一个长时间的操做,或执行一些命令但愿窗口关闭后命令继续执行,能够建立一个screen回话
例如:在screen中启动一个监听redis消息队列的脚步并执行操做:
一、新建screen会话
screen -S  xxname
二、执行命令
while /bin/true; do date && python ./monitor.py ; done  //实时监听redis队列
三、退出会话
screen -d xxname
相关文章
相关标签/搜索