基础术语:

sessions :会话,一个用户登录到主机,那么就建立了一个 session,如下图1,详细参考:https://my.oschina.net/u/158589/blog/360862
tmux session :在 session 中,我们可以创建多个 tmux session,效果相当于我们用 SecureCRT 打开多个 session,通常我们只打开一个就够了
注意 session 与 tmux session 的区别,我们只有先在 session 中打开一个 tmux session,才能在 tmux session 中创建多个 windows 和 panes
windows :在 session 中,我们可以通过 screen 命令创建多个屏幕,但在 tmux session 中,我们一般说可以创建多个窗口(windows)
Panes :在 tmux session 中,一个 windows 可以创建多个面板(Panes),或者说对一个 window 进行分屏,如下图2
tmux :一个分屏工具,它允许在一个 session 中创建多个 windows,在一个 windows 中创建多个 pages,即使 session 被关闭,windows 和 pages 也能在后台运行

tmux 命令:

[root@localhost ~]$ yum install -y tmux    # 安装 tmux
[root@localhost ~]$ tmux list-keys # 列出所有快捷键

tmux session 常用操作:

[root@localhost ~]$ tmux                           # 在当前 session 中创建并进入一个新的 tmux session
[root@localhost ~]$ tmux new -s session_name # 在当前 session 中创建并进入一个新的命名的 tmux session
[root@localhost ~]$ tmux switch -t session_name # 通过 session_name 切换到指定的 tmux session
[root@localhost ~]$ tmux list-sessions / tmux ls # 列出当前 session 中的所有 tmux session
[root@localhost ~]$ tmux detach # 离开当前开启的 tmux session
[root@localhost ~]$ tmux kill-server # 关闭所有 tmux session

tmux windows 常用操作:

[root@localhost ~]$ tmux                          # 需要先进入 tmux session 才能进行如下操作
[root@localhost ~]$ tmux new-window # 创建一个新的 window
[root@localhost ~]$ tmux list-windows # 查看所有的 window
[root@localhost ~]$ tmux select-window -t :0-9 # 根据索引跳转到指定的 window
[root@localhost ~]$ tmux rename-window xxx # 重命名当前 window

tmux panes 常用操作:

[root@localhost ~]$ tmux split-window           # 将当前 window 水平划分成两个 pane
[root@localhost ~]$ tmux split-window -h # 将当前 window 垂直划分成两个 pane
[root@localhost ~]$ tmux select-pane -[UDLR] # 切换到指定方向的 pane,分别表示:Up Down Left Right
[root@localhost ~]$ tmux swap-pane -[UDLR] # 交换指定方向的 pane,分别表示:Up Down Left Right

在上面的操作中,我们都是直接用命令,但更常用的是使用 tmux 的快捷键,在操作快捷键之前需要先按 Ctrl + B ,再按快捷键才会生效

tmux sessions 快捷键:

[root@localhost ~]$ tmux  # 需要先进入 tmux session 才能进行如下操作
? # 查看所有快捷键,按 q 返回
d # 离开当前的 tmux session,暂时返回 session shell 界面
d # 离开指定的 tmux session,暂时返回 session shell 界面
s # 选择并进入到指定的 tmux session
Ctrl + D # 退出当前 tmux session
Ctrl + Z # 挂起当前 tmux session

tmux windows 快捷键:

c       # 创建新的窗口
& # 关闭当前窗口
[0-9] # 切换到指定窗口
p # 切换至上一窗口
n # 切换至下一窗口
l # 前后窗口间互相切换
w # 通过窗口列表切换窗口
, # 重命名当前窗口
. # 修改当前窗口编号,相当于重新排序

tmux panes 快捷键:

"             # 将当前窗口上下分屏
% # 将当前窗口左右分屏
x # 关闭当前面板
! # 将当前面板置于新窗口,即新建一个窗口,其中仅包含当前面板
ctrl+方向键 # 以1个单元格为单位移动边缘以调整当前面板大小
alt+方向键 # 以5个单元格为单位移动边缘以调整当前面板大小
q # 显示面板编号
o # 切换到当前面板中的下一个面板
方向键 # 移动到当前面板中的指定方向的面板
{ # 向前调换当前面板位置
} # 向后调换当前面板位置
z # 最大化当前所在面板,再按一次则还原

tmux 个性化配置:

[root@localhost ~]$ cat ~/.tmux.conf    # 自定义 tmux 配置文件
setw -g mode-mouse on # 开启window/pane里面的鼠标支持
setw -g mouse-resize-pane on # 开启支持用鼠标拖动调节pane的大小
setw -g mouse-select-pane on # 开启支持用鼠标点击pane来激活该pane

Linux tmux 工具的更多相关文章

  1. linux tmux 工具使用 tmux.conf 文件

    set -g prefix ^a unbind ^b bind a send-prefix unbind '"' bind - splitw -v unbind % bind \ split ...

  2. Linux性能工具介绍

    l  Linux性能工具介绍 p  CPU高 p  磁盘I/O p  网络 p  内存 p  应用程序跟踪 l  操作系统与应用程序的关系比喻为“唇亡齿寒”一点不为过 l  应用程序的性能问题/功能问 ...

  3. Linux 常用工具小结:(5) lftp工具使用

    Linux 常用工具小结:(1) lftp工具使用. 这里会按照一些比较常用的功能列出,并举一个具体的例子逐一解释功能. 通常使用ftp过程是登陆ftp,浏览ftp内容,下载ftp文件,或者上传ftp ...

  4. linux shell工具集合

    1)判断进程是否存在,如果不存在再执行启动命令,可以避免一个脚本同时启动多份 if [ $(ps -ef |grep  bastion_account.sh|grep -v grep|wc -l) - ...

  5. Linux命令工具 top详解

    Linux命令工具 top详解 top命令是Linux下常用的性能分析工具,能够实时显示系统中各个进程的资源占用状况,类似于Windows的任务管理器.top是一个动态显示过程,即可以通过用户按键来不 ...

  6. Linux命令工具基础04 磁盘管理

    Linux命令工具基础04 磁盘管理 日程磁盘管理中,我们最常用的有查看当前磁盘使用情况,查看当前目录所占大小,以及打包压缩与解压缩: 查看磁盘空间 查看磁盘空间利用大小 df -h -h: huma ...

  7. linux vi 工具的使用

    linux vi 工具的使用 1.打开文件 vi filename 如果存在该文件,则打开,不存在,则删除 2. 进入vi后,按i建,可以输入内容, 按ESC 在按: ,输入wq保存并退出. 3.移动 ...

  8. Linux/Unix工具与正则表达式的POSIX规范

    http://www.infoq.com/cn/news/2011/07/regular-expressions-6-POSIX 对正则表达式有基本了解的读者,一定不会陌生『\d』.『[a-z]+』之 ...

  9. Linux开发工具的使用

    1.   Linux开发工具的使用 Vim编译的使用 Gdb调试工具的使用 Makefile的编写 linux跟踪调试 SSH的使用 subversion的使用 1.   Linux开发工具的使用 V ...

随机推荐

  1. spring容器的配置和springmvc的配置

    spring容器的配置 <?xml version="1.0" encoding="UTF-8"?> <beans xmlns="h ...

  2. android 使用 sqlite

    SQLiteHelper .class  (升级的时候,做点小技巧) package com.keyue.qlm.util;  import android.content.Context;  imp ...

  3. 使用 Elasticsearch 实现博客站内搜索

    Reference:  http://www.open-open.com/lib/view/open1452046497511.html 一直以来,为了优化本博客站内搜索效果和速度,我使用 bing ...

  4. VBA学习笔记(6)--抽取第一列中叫“虹虹”的个人信息

    说明(2017.3.25): 1. 知识点为dim arr2(1 to 1000, 1 to 4)先定义一个足够大的二维数组,不然后面需要transpose转置成一维数组. '抽取列表中叫“虹虹”的所 ...

  5. iOS调用其它App,如拨打电话、发送邮件等。UIApplication:openURL:方法是实现这一目的的

    在iOS开发中,经常需要调用其它App,如拨打电话.发送邮件等.UIApplication:openURL:方法是实现这一目的的最简单方法,该方法一般通过提供的url参数的模式来调用不同的App. 通 ...

  6. docker探索-windows10 docker 使用 mysql(二)

    转自:http://blog.csdn.net/daocaoren92wq/article/details/68484049$ docker pull mysql docker@default:~$ ...

  7. 【WPF/MVVM】把鼠标事件写到Controller层

    要使用Mouse Event,最快捷的方法便是前台控件直接绑定事件,然后再后台代码中实现. 在MVVM中,View层的后台代码无法调用Contrller层的函数.(反过来可以Controller –& ...

  8. Android——Button的颜色

    .xml <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android ...

  9. kafka+storm+hbase

    kafka+storm+hbase实现计算WordCount. (1)表名:wc (2)列族:result (3)RowKey:word (4)Field:count 1.解决: (1)第一步:首先准 ...

  10. js 区分 safari chrome iso

    网上有很多这个文章的代码,但是在区分safari chrome 没有很好的例子,因为chrome包含了 safari 毕竟他们都是wekit内核,不过利用jquery还是能区分的 在这里分享下吧 -- ...