Hello World

窗口管理只是 tmux 功能的一小部分,另一个很有用的功能就是,连接到远程主机之后,一旦断开,那么当前账户登录的任务就被取消了,但是使用 tmux 可以在断开之后继续工作,下次登录可以查看。其他的功能还有:
  1. 窗口切换,每个窗口里还可以分割面板
  2. 配置方便,可以使用脚本
  3. 类似 vim 的双层操作逻辑
  4. 复制粘贴缓冲区
安装的话也很简单,在 mac 下直接 brew install tmux(前提需要安装 homebrew),ubuntu 下则直接 sudo apt-get install tmux
在终端中输入 tmux 就可以打开一个新的 tmux session,tmux 的所有操作必须先使用一个前缀键(默认是 ctrl + b)进入命令模式,或者说进入控制台,就像 vim 中的 esc。

基本操作

信息查询
  • tmux list-keys 列出所有可以的快捷键和其运行的 tmux 命令
  • tmux list-commands 列出所有的 tmux 命令及其参数
  • tmux info 流出所有的 session, window, pane, 运行的进程号,等。
窗口控制
先来看看在 tmux 之外如何进行控制
  • session 会话:session是一个特定的终端组合。输入tmux就可以打开一个新的session
    • tmux new -s session_name 创建一个叫做 session_name 的 tmux session
    • tmux attach -t session_name 重新开启叫做 session_name 的 tmux session
    • tmux switch -t session_name 转换到叫做 session_name 的 tmux session
    • tmux list-sessions / tmux ls 列出现有的所有 session
    • tmux detach 离开当前开启的 session
    • tmux kill-server 关闭所有 session
  • window 窗口:session 中可以有不同的 window(但是同时只能看到一个 window)
    • tmux new-window 创建一个新的 window
    • tmux list-windows
    • tmux select-window -t :0-9 根据索引转到该 window
    • tmux rename-window 重命名当前 window
  • pane 面板:window 中可以有不同的 pane(可以把 window 分成不同的部分)
    • tmux split-window 将 window 垂直划分为两个 pane
    • tmux split-window -h 将 window 水平划分为两个 pane
    • tmux swap-pane -[UDLR] 在指定的方向交换 pane
    • tmux select-pane -[UDLR] 在指定的方向选择下一个 pane
更常用的是在 tmux 中直接通过默认前缀 ctrl + b 之后输入对应命令来操作,具体如下(这里只列出输入默认前缀之后需要输入的操作):
基本操作
  • ? 列出所有快捷键;按q返回
  • d 脱离当前会话,可暂时返回Shell界面
  • s 选择并切换会话;在同时开启了多个会话时使用
  • D 选择要脱离的会话;在同时开启了多个会话时使用
  • : 进入命令行模式;此时可输入支持的命令,例如 kill-server 关闭所有tmux会话
  • [ 复制模式,光标移动到复制内容位置,空格键开始,方向键选择复制,回车确认,q/Esc退出
  • ] 进入粘贴模式,粘贴之前复制的内容,按q/Esc退出
  • ~ 列出提示信息缓存;其中包含了之前tmux返回的各种提示信息
  • t 显示当前的时间
  • ctrl + z 挂起当前会话
窗口操作
  • c 创建新窗口
  • & 关闭当前窗口
  • [0-9] 数字键切换到指定窗口
  • p 切换至上一窗口
  • n 切换至下一窗口
  • l 前后窗口间互相切换
  • w 通过窗口列表切换窗口
  • , 重命名当前窗口,便于识别
  • . 修改当前窗口编号,相当于重新排序
  • f 在所有窗口中查找关键词,便于窗口多了切换
面板操作
  • " 将当前面板上下分屏(我自己改成了 |)
  • % 将当前面板左右分屏(我自己改成了 -)
  • x 关闭当前分屏
  • ! 将当前面板置于新窗口,即新建一个窗口,其中仅包含当前面板
  • ctrl+方向键 以1个单元格为单位移动边缘以调整当前面板大小
  • alt+方向键 以5个单元格为单位移动边缘以调整当前面板大小
  • q 显示面板编号
  • o 选择当前窗口中下一个面板
  • 方向键 移动光标选择对应面板
  • { 向前置换当前面板
  • } 向后置换当前面板
  • alt+o 逆时针旋转当前窗口的面板
  • ctrl+o 顺时针旋转当前窗口的面板
  • z 最大化当前所在面板
  • page up 向上滚动屏幕,q 退出
  • page down 向下滚动屏幕,q 退出

转载:https://wdxtub.com/2016/03/30/tmux-guide/

本文有删减。

[转载]tmux常用快捷键的更多相关文章

  1. [daily][tmux] tmux常用快捷键

    介绍 什么是tmux? Terminal Multiplexer. 1. 如果你是linux用户,tmux就是screen的alternative. 2. 如果你是windows用户,tmux就是一个 ...

  2. [转载]AxureRP常用快捷键

    习惯用Axure快捷键会让你做原型的时候更得心应手.Axure中文网总结了常用的一些快捷键分享给大家 . Axure RP Pro 6.5快捷键大全,如有疏漏,欢迎补充.   基本快捷键:   打开: ...

  3. Tmux常用快捷键以及我会常到的一些问题汇总

    今天部署测试服务器环境 使用到了tmux 刚开始我把tmux想象成了像omzsh这种shell 但是被指出是错误的,tmux类似于在shell里面的软件.我还真是第一次接触到这个概念. 首先安装 br ...

  4. tmux常用快捷键

    首先输入命令开始. $ tmux 然后,基本组合 Ctrl+b(同时按下ctrl和b),按完松开 松开后,按%(即同时按下shift和5),是水平分割 按“(即同时按shift和'),是纵向分割 按上 ...

  5. Tmux常用快捷键及命令

    Exported from workflowy! tmux session start/create session- tmux- tmux new-session -s portage listin ...

  6. 【QT】《转载》常用快捷键

    F1        查看帮助F2        跳转到函数定义(和Ctrl+鼠标左键一样的效果)Shift+F2    声明和定义之间切换F4        头文件和源文件之间切换Ctrl+1     ...

  7. Tmux 常用快捷键

    Ctrl-b : Send the prefix key through to the application. " : Split the current pane into two, t ...

  8. (转载)Total Commander 常用快捷键(并附快捷键大全)

    (转载)http://blog.chinaunix.net/uid-532511-id-3051990.html Total Commander 常用快捷键 喜欢用Total Commander的人, ...

  9. VIM常用快捷键(转载)

    移动光标 h,j,k,l 上,下,左,右 ctrl-e 移动页面 ctrl-f 上翻一页 ctrl-b 下翻一页 ctrl-u 上翻半页 ctrl-d 下翻半页 w 跳到下一个字首,按标点或单词分割 ...

随机推荐

  1. 解析:为什么程序员应该有一台Mac个人电脑?

    对于开发来讲,使用Mac电脑的好处,下面简单列举几个: 首先,macOS很安全和稳定,Mac 系统的底层是最原始的unix操作系统,很多大型的银行和军工企业都是这个操作系统,安全性很高,基本不需要安装 ...

  2. 洛谷P2765魔术球问题 最小路径覆盖

    https://www.luogu.org/problemnew/show/P2765 看到这一题第一眼想到:这不是二分最大流吗,后来发现还有一种更快的方法. 首先如果知道要放多少个球求最少的柱子,很 ...

  3. kubernetes 基础一

    从集群外部访问pod或service pod 在Kubernetes中,创建.调度和管理的最小单位是pod而不是容器.pod代表着一个运行着的工作单元.一般情况下,每个pod中只有一个容器(原因是为了 ...

  4. python 存储引擎 mysql(库,表, 行) 单表多表操作 (foreign key) sql_mode pymysql模块讲解

    ##################总结############### mysql 常用数据类型 整型:tinyint  int(42亿条左右)  bigint 小数:float double dec ...

  5. jquery load 陷阱【原】

    基础写法 function load(targetId,templateName) { $("#"+targetId).load(contextPath+templateName) ...

  6. 他山之石--机器学习 step by step

    练习使用的数据 diabetes.csv 备用百度网盘地址 输入变量与输出变量均为连续变量的预测问题是回归问题: 输出变量为有限个离散变量的预测问题成为分类问题: 其实回归问题和分类问题的本质一样,都 ...

  7. jquery判断对象是否存在

    if($("#abc").length >0) { ... } if($("#abc").html() != "") { ... }

  8. C#正则表达式匹配

    1.匹配所有带括号的字符串 string s = "aaaa(bbb)ccc(ddd)eeee"; string pattern = "\\(\\w+\\)"; ...

  9. GIT好文搜藏

    git图解:代码区域总结 https://zhuanlan.zhihu.com/p/20175919 git跟传统的代码管理器(如:svn)不同, 主要区别在于git多了个本地仓库以及缓存区,所以即使 ...

  10. alexnet- tensorflow

    alexnet 在 imagenet上夺冠是卷积神经网络如今这么火热的起点. 虽然卷积神经网络很早就被提出来,但是由于计算能力和各方面原因,没有得到关注. alexnet 为什么能取得这么好的成绩,它 ...