tmux 按照官方给出的介绍是:终端复用工具。说白了就是可以仅仅在开启一个终端的情况下同时处理多个任务。

比如下面我设置的这样一个终端。

昨天,旭哥给我说这个东西的时候,我还是第一次听说。同时旭哥还介绍了另一个screen,这同样是个终端复用工具。

但是和tmux相比,screen是基于GPLv2开源协议的开源软件,tmux是基于FreeBSD开源协议,对于vim有更好的接口,更适用于Unix用户。

安装

对我而言,因为换了一台MacPro,所以使用brew进行安装就很方便。

brew install tmux

对于Linux用户而言,有包管理工具的话自然也是很方便的,但是对于源码安装这个方式就必须多敲几个命令了。

详细的步骤可以参考下面的这个链接。

http://www.jianshu.com/p/f7f24b4b2625


用法

网上对tmux有很多详细介绍的帖子,我个人觉得没有必要重复的造轮子,就选取了最接近tmux官方文档的翻译版本。有兴趣的话可以参考下面文章的链接。

http://wdxtub.com/2016/03/30/tmux-guide/

重点

下面对我个人认为比较有迷惑性的知识点进行一下剖析。

一、<prefix>前缀键

好比是vimesc键,在各种状态之间进行切换必不可少的要使用到它,对于tmux也是这样,默认是ctrl+b,也就是说,我们在进行快捷键操作的时候要先按下ctrl+b,然后再按下相对应的功能键。

比如我想在终端看下时间可以这么干!

第一步:ctrl+b
第二步:按下键盘上的t键

实现的效果如下:

对于其他的快捷键可以参考第二部分的内容。

二、window和pane的区分

显而易见,window是一个完整的终端界面,而pane则是附着于window的更小的单元。在第二部分已经介绍过了相关的操作步骤。我们可以开启多个会话(session),然后针对每一个session(其实就是一个window)我们可以分割出多个的pane,然后在不同的pane进行命令的执行。

下面详细介绍一下整体的使用流程。

tmux new -s first

就进入了session名为first的一个会话。

tmux split-window # 横向分割window
tmux split-window -h # 纵向分割window

对pane进行左右(上下)互换:

tmux swap-pane -[DULR]

实现的效果如下:

暂时退出tmux:

第一步:ctrl+b
第二步:ctrl+z

然后如果想再次进入到这个session中的话,执行下面的命令。

tmux attach-session -t session_name

这样就又能恢复到之前的那个窗口工作的环境了。

最后工作全部做完了不需要tmux了,就可以执行:

tmux kill-server

来退出所有的tmux会话环境了。


这两天才发现,组内各位大哥都是ssh到服务器上用vim直接开发的,真的是太厉害了。各种炫酷的界面,真的是让我大开眼界,以后要好好向他们学习了。

tmux安装与使用的更多相关文章

  1. (原) tmux安装与使用

    本文为原创文章,转载请注明出处,谢谢 tmux安装 1.yum search tmux 2.yum install package (package为选择要安装的包名,如上图“tmux.x86_64” ...

  2. linux中neovim+tmux安装与配置遇到的问题

    Neovim 安装与配置 安装 pip3 install neovim 之前安装过anaconda,默认安装python3和pip3 检查状态 :checkhealth 终端输入'nvim' 进入nv ...

  3. tmux安装配置与使用

    tmux安装 sudo apt-get install tmux tmux配置 在家目录下操作 cd git clone https://github.com/gpakosz/.tmux.git ln ...

  4. CentOS下Tmux安装和使用

    Tmux介绍: Tmux是BSD实现的Screen替代品,相对于Screen,它更加先进:支持屏幕切分,而且具备丰富的命令行参数,使其可以灵活.动态的进行各种布局和操作.它可以做到一条命令就启动起来( ...

  5. CentOS下tmux安装与使用

    tmux介绍: tmux它是BSDScreen替代品,相对于Screen,它更加先进:支持屏幕切分,并且具备丰富的命令行參数,使其能够灵活.动态的进行各种布局和操作.它能够做到一条命令就启动起来(强大 ...

  6. tmux 安装

    安装libevent wget https://github.com/downloads/libevent/libevent/libevent-2.0.21-stable.tar.gz tar xzv ...

  7. tmux安装

    安装tmux sudo yum -y install tmux 修改tmux配置 cat > /root/.tmux.conf <<EOF set-option -g default ...

  8. Tmux安装和使用

    1.What's tmux tmux 是一个终端复用器: 可以激活多个终端或窗口, 在每个终端都可以单独访问,每一个终端都可以访问,运行和控制各自的程序.tmux类似于screen,可以关闭窗口将程序 ...

  9. 【Linux】tmux安装(非root)及其使用

    tmux(terminal multiplexer)是Linux上的终端复用神器. 1. 安装 (1)下载 下载及其依赖软件. wget -c https://github.com/tmux/tmux ...

随机推荐

  1. 寻找重复的子树 Find Duplicate Subtrees

    2018-07-29 17:42:29 问题描述: 问题求解: 本题是要求寻找一棵树中的重复子树,问题的难点在于如何在遍历的时候对之前遍历过的子树进行描述和保存. 这里就需要使用之前使用过的二叉树序列 ...

  2. Android Intent参数传递

    Android Intent参数传递 Android参数传递有两种方式, 1.是从一个Activity传递参数到第二个Activity并在第二个Activity获取数据 2.是从第二个Activity ...

  3. Go开发环境安装配置

    访问下载地址:https://golang.org/dl/ 32位系统下载go1.8.1.linux-386.tar.gz,64位系统下载go1.8.1.linux-amd64.tar.gz, 假定你 ...

  4. ViewPager 如何得到当前的Fragment (使用FragmentPagerAdapter)

    使用FragmentPagerAdapter时,难免要在MainActivity 和 当前显示的Fragment间传递数据.但是FragmentPagerAdapter并没有给我们提供类似getCur ...

  5. 清空mailq 队列里面的邮件

    tmp_=`mailq | grep -E "root" | awk '{print $1}'` for i in $tmp_;do postsuper -d $i;done po ...

  6. Confluence 6 嵌套用户组的影响

    本部分说明了嵌套用户组对用户登录,权限和查看更新用户组的影响. 登录 如果用户属于一个授权的用户组或者授权用户组中的子用户组,当用户登录后,用户可以访问应用程序. 权限 如果用户属于的用户组或者用户组 ...

  7. hdu3374 kmp+最小表示法

    Give you a string with length N, you can generate N strings by left shifts. For example let consider ...

  8. ansible-playbook快速入门填坑

    参考另外一篇文章 http://blog.51cto.com/weiweidefeng/1895261 when条件 参考http://blog.51cto.com/breezey/1757593 安 ...

  9. UVA-12558 Egyptian Fractions (HARD version) (IDA* 或 迭代加深搜索)

    题目大意:经典的埃及分数问题. 代码如下: # include<iostream> # include<cstdio> # include<cstring> # i ...

  10. struts2整合axis2后,访问不到wsdl,被struts2拦截的解决办法

    在struts2中整合axis2后,访问wsdl的时候显示404  not found There is no Action mapped for action name xxxxxxxx. 解决办法 ...