screen命令

发布于:2024-05-08 ⋅ 阅读:(110) ⋅ 点赞:(0)

首先明确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的子屏。


网站公告

今日签到

点亮在社区的每一天
去签到