欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Linux常用界面管理工具screen与tmux安装与基本命令

程序员文章站 2022-05-29 22:05:16
...

1.区别:

  • screen:功能较简单,Centos 6/7、Ubuntu均支持screen,centos 8暂不支持直接安装

  • tmux:功能更强大,支持Centos与Ubuntu

    Ubuntu18.4默认安装screen、tmux

2.安装

2.1 screen安装:
  • 查看是否安装screen,输入screen --help若提示-bash: screen: command not found内容,则代表未安装

  • Centos 6/7安装screen命令:

    • 在线安装: yum -y install screen

    • 离线安装包安装:

      • df查看安装ISO是否自动挂载

      • [[email protected] ~]# df
        Filesystem     1K-blocks    Used Available Use% Mounted on
        /dev/sda2      100660656 4302368  91238288   5% /
        tmpfs             501508      72    501436   1% /dev/shm
        /dev/sda1         999320   34088    912804   4% /boot
        /dev/sda3       50264772   53064  47651708   1% /data   //iso应为sr0文件
        [[email protected] ~]# mount /dev/sr0 /mnt                   //挂载到mnt目录上
        mount: block device /dev/sr0 is write-protected, mounting read-only
        [[email protected] ~]# df
        Filesystem     1K-blocks    Used Available Use% Mounted on
        /dev/sda2      100660656 4302324  91238332   5% /
        tmpfs             501508      72    501436   1% /dev/shm
        /dev/sda1         999320   34088    912804   4% /boot
        /dev/sda3       50264772   53064  47651708   1% /data
        /dev/sr0         3897932 3897932         0 100% /mnt      //已经挂载完成
        [[email protected] ~]# cd /mnt/Packages/    //打开软件包所在文件夹
        [[email protected] Packages]# ls screen*   //查看screen的安装包是否存在
        screen-4.0.3-19.el6.x86_64.rpm
        [[email protected] Packages]# rpm -ivh /mnt/Packages/screen-4.0.3-19.el6.x86_64.rpm      //安装screen程序包 
        
2.2 tmux安装:
  • 查看是否安装tmux,输入tmux --help若提示-bash: tmux: command not found内容,则代表未安装

  • Centos 7/8安装screen命令:

    • 在线安装: yum -y install tmux

    • 离线安装包安装:

      • df查看安装ISO是否自动挂载

      • [[email protected] ~]# df
        Filesystem     1K-blocks    Used Available Use% Mounted on
        devtmpfs          740136       0    740136   0% /dev
        tmpfs             755936       0    755936   0% /dev/shm
        tmpfs             755936   10512    745424   2% /run
        tmpfs             755936       0    755936   0% /sys/fs/cgroup
        /dev/sda2      104806400 4949876  99856524   5% /
        /dev/sda5       52403200   32992  52370208   1% /data
        /dev/sda1        1038336  171672    866664  17% /boot
        tmpfs             151188      12    151176   1% /run/user/42
        tmpfs             151188       0    151188   0% /run/user/0     //iso应为sr0文件
        [[email protected] ~]# mount /dev/sr0 /mnt                          //挂载到mnt目录上
        mount: /dev/sr0 is write-protected, mounting read-only
        [[email protected] ~]# df
        Filesystem     1K-blocks     Used Available Use% Mounted on
        devtmpfs          740136        0    740136   0% /dev
        tmpfs             755936        0    755936   0% /dev/shm
        tmpfs             755936    10512    745424   2% /run
        tmpfs             755936        0    755936   0% /sys/fs/cgroup
        /dev/sda2      104806400  4949876  99856524   5% /
        /dev/sda5       52403200    32992  52370208   1% /data
        /dev/sda1        1038336   171672    866664  17% /boot
        tmpfs             151188       12    151176   1% /run/user/42
        tmpfs             151188        0    151188   0% /run/user/0
        /dev/sr0        10767514 10767514         0 100% /mnt        //已经挂载完成
        [[email protected] ~]# cd /mnt/Packages/                         //打开软件包所在文件夹
        [[email protected] Packages]# ls tmux*                      //查看tmux的安装包是否存在
        tmux-1.8-4.el7.x86_64.rpm
        [[email protected] Packages]# rpm -ivh /mnt/Packages/tmux-1.8-4.el7.x86_64.rpm  //安装tmux程序包
        

3.常规使用

3.1 screen使用
  • 语法

  • screen [-参数] [cmd [args]]
    
  • 参数:常用

    • screen –S [SESSION] ,创建新的会话
      screen –x [SESSION] ,加入会话
      screen -d [SESSION] ,剥离当立会话,快捷键为Ctrl+a,d
      exit 退出当前会话并关闭会话
      screen -ls 显示所有已经打开的screen会话
      screen -r [SESSION] ,恢复某screen会话
      screen -v 显示screen版本
  • 实例:

    • [[email protected] ~]# screen -S aa         //创建一个名字为aa的新窗口
      [[email protected] ~]# screen               //不添加参数则新建窗口为tty端口名字
      [[email protected] ~]# screen -ls          //显示当前所有screen会话
      There are screens on:
      	4034.pts-6.Centos7	(Detached) //不同名字之间用pid(进程号)区别
      	3962.pts-6.Centos7	(Detached) //Detached表示无终端连接
      	3926.pts-6.Centos7	(Detached)
      	3890.aa	(Detached)
      4 Sockets in /var/run/screen/S-root.
      [[email protected] ~]# screen -r 4034   //可以通过pid进入对应会话窗口,限Detached状态
      [[email protected] ~]# screen -x 3890   //可以连接会话窗口,不限状态
      [[email protected] ~]# screen -d   //所有连接窗口均会退出,用快捷键为单方面退出
      [[email protected] ~]# screen -v     //显示screen版本信息
      Screen version 4.01.00devel (GNU) 2-May-06
      
  • 快捷键:Ctrl+a ,先同时按下后,再选择相应的按键就可以触发相应快捷操作,具体快捷键内容可以在man中进行查看

3.2 tmux使用
  • 参数:常用

    • tmux new -s [SESSION] ,创建新的会话,不加名字会导致按照数字顺序从0开始创建
      tmux detach -t [SESSION] ,剥离当前会话,快捷键为Ctrl+b,d
      tmux attach -t [SESSION] ,连接会话
      tmux switch -t [SESSION] ,切换会话
      tmux ls ,查看所有的会话
      tmux kill-session -t [SESSION] 杀死某个会话
      tmux split-window [-h] 新建分窗格,仍属于同一个窗口,但可以同一个窗口输入多个命令,-h 表示为水平分窗格
      tmux new-window -n [name] 新建窗口

    • [[email protected] ~]# tmux new -s bb    //创建一个名字为bb的会话
      [[email protected] ~]# tmux detach       //暂时退出当前会话
      [[email protected] ~]# tmux ls           //查看所有tmux会话
      0: 1 windows (created Sun Dec 15 13:23:00 2019) [76x35]
      bb: 1 windows (created Sun Dec 15 13:29:42 2019) [76x35]
      cc: 1 windows (created Sun Dec 15 13:29:16 2019) [76x35]
      [[email protected] ~]# tmux attach -t bb  //连接到会话bb
      [[email protected] ~]# tmux switch -t cc  //切换到会话cc
      [[email protected] ~]# tmux kill-session -t cc    //杀死会话cc
      [[email protected] ~]# tmux ls
      0: 1 windows (created Sun Dec 15 13:23:00 2019) [76x35]
      bb: 1 windows (created Sun Dec 15 13:29:42 2019) [76x35] (attached)
      
    •  [[email protected] ~]# tmux split-window  //新建上下分窗格
       [[email protected] ~]# 
       
       
       —————————————————————────────────———————————————————————───┬────────————————————───────────
       [[email protected] ~]# tmux split-window -h //新建水平分窗口      │[[email protected] ~]# 
       [[email protected] ~]#                                          │
                                                                                         
      
    • 快捷键:Ctrl+b ,先同时按下后,再选择相应的按键就可以触发相应快捷操作,具体帮忙可以在man帮助中查看更多定义或者通过tmux list-commandstmux list-keys获取更多信息

      • C+b % 新建水平两个窗格
        C+b " 新建上下两个窗格
        C+b 方向键 光标切换到其他窗格
        C+b ; 光标切换到上一个窗格
        C+b o 光标切换到下一个窗格
        C+b { 当前窗格左移
        C+b } 当前窗格右移
        C+b Ctrl+o 当前窗格上移
        C+b Alt+o 当前窗格下移
        C+b x 关闭当前窗格
        C+b ! 将当前窗格拆分为一个独立窗口
        C+b z 当前窗格全屏显示,再使用一次会变回原来大小
        C+b Ctrl+方向键 按箭头方向调整窗格大小
        C+b q 显示窗格编号
        C+b w 列出当前会话的所有子窗口,方向键选择切换窗口
        C+b s 列出所有会话及对应的子窗口,方向键选择切换窗口

***以上内容仅供参考,具体用法请以官方文档为准,若有失误之处,烦请帮忙指出,谢谢 ^ - ^ ***