screen命令

首先明确screen和bash终端有区别,如果不小心按了ctrl+a+d会停止向屏幕输出,此时需要ctrl+a+q才能输出

一.新建屏幕

四种方法

复制代码
#### 其中一种是为该页面新创建一个进程

* screen -dmS \<页面名\> **这种方法是为该页面新创建一个进程,
  类似于开启另一个tty(也是新创建一个进程)**
复制代码
#### 另外三种都是在当前screen进程下创建子进程

* screen -S \<页面名\> 这种方法是在当前bash进程下创建一个子进程
* screen
* 当前screen下使用ctrl+a+c

二.命令后台运行

  • 三种方法
    • 1.用之前linux-进程模块中的nohup命令
    • 2.在另一个tty上运行
    • 3.screen -dmS <页面名> bash -c "命令"

三.查看当前所有页面

screen -ls

四.永久关闭页面

首先明确

  • 每一个页面都是一个父或子进程
  • 在一个screen中新建其他的screen(除了用screen -dmS新建的),都是在作为当前screen的子进程

开始关闭

可以尝试
1.exit
2.ctrl+d
3.ctrl+a+X 关闭当前所在页面
3.screen -XS <页面名> quit
4.最后还不行就在ps -ef --forest,如下图我们可以看到使用dmS建的screen是一个父进程,在该screen下我们又建了一个screen作为其子进程,两个子进程bash一个是父screen的,一个是新建的screen的。
然后我们kill -9 2428即可,或者screen -ls本来就会列出进程号kill 进程号也可以

五.进程挂到前台

screen -r <屏幕号>

六.多终端同步操作方法

想要将一个终端的内容实时同步到多个终端

  • 1.保证每个终端都登录的同一个用户
  • 2.每个终端都只保留一个screen页面,可用screen查看
  • 3.每一个被操作终端都进入该页面,主操终端输入screen -x作为执行者即可多终端同步

七.临时折叠页面

1.ctrl+a+d

ctrl+a等效于vim中的:,然后输入d即可

2.screen -d <页面号>

不同点:

ctrl+a+d只能折叠当前打开的页面

screen -d可以选择想折叠的页面,而且它可以同时折叠多个登录终端页面

八.分屏操作

1.ctrl+a+shift+| 左右分屏

2.ctrl+a+S 上下分屏

3.ctrl+a+shift+" 重点掌握,查看当前attached主进程screen的所有子屏,因为前面已经说过,除了screen -dmS <屏幕名>之外创建的screen都是主进程screen的子屏。

相关推荐
ohMyGod_12320 分钟前
用React实现一个秒杀倒计时组件
前端·javascript·react.js
eternal__day23 分钟前
第三期:深入理解 Spring Web MVC [特殊字符](数据传参+ 特殊字符处理 + 编码问题解析)
java·前端·spring·java-ee·mvc
醋醋29 分钟前
Vue2源码记录
前端·vue.js
江耳41 分钟前
从10秒到无限流:我用Vercel+NextJS实现AI流式对话遇到的超时问题及解决方案
前端
总之就是非常可爱1 小时前
三分钟让你看懂alien-signals computed基本原理
前端
JustHappy1 小时前
「我们一起做组件库🌻」虚拟消息队列?message组件有何不同?(VersakitUI开发实录)
前端·javascript·vue.js
Carlos_sam1 小时前
Openlayers:为Overlay创建element的四种方式
前端·javascript·vue.js
纵昂1 小时前
Js中常用数据转换及方法记录汇总
前端·javascript
海底火旺1 小时前
闭包模块:JavaScript的"魔法收纳盒"
前端·javascript
Gixy1 小时前
日常在VS Code开发中没注意到的一些实用配置
前端·visual studio code